Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Minor wordsmithing

...

Page and Component Packages

Only page and component certain classes are subject to reload. Reloading is based on package name; the packages that are reloaded are derived from the application configuration.

...

  • org.example.myapp.pages
  • org.example.myapp.components
  • org.example.myapp.mixins
  • org.example.myapp.base
  • org.example.myapp.services (Tapestry 5.2 and later)
Since
since5.2

Since Tapestry 5.2, service implementation classes will are also be reloaded automatically after changes. There are some limitations to this , including the same requirement that the Java classes be on the filesystem(see below).

File System Only

Reloading of classes and other files applies only to files that are actually on the file system, and not files obtained from JAR files. This is perfect during development, where the files in question are in your local workspace. In a deployed application, you are somewhat subject to the implementation of your servlet container or application server.

...

Tapestry's class loader architecture can cause minor headaches when you make use of a services layer, or any time that you pass component instances to objects that are not themselves components.

You will often see a ClassCastExceptionIn such cases you may see ClassCastException errors. This is because the same class name, say org.example.myapp.pages.Start, exists as two different class instances. One class instance is loaded by the web application's default class loader. A second class instance has been loaded and transformed by Tapestry's reloading class loader.

...