Hi Priti,
The application server classloader requires a restart for any
new/changed java classes (a redeploy also works). Changes to an
existing handler, which is a java file... therefor requires a restart.
Additions likewise require a restart.
Additionally, the jsftemplating project requires that all
handlers/factories in a project be built at the same time. This is a
limitation with the way jsftemplating uses APT. It parses the
annotations and writes them to the .map files. It *overwrites* the map
file each time it compiles... and it only processes what it compiles.
This means if you don't compile all files at the same time, it will not
include everything in the .map files.
So... if you're not seeing your handler, one of the following must be true:
1) You didn't restart the server (or redeploy)
2) You didn't compile that handler w/ your last compile (perhaps an
incremental compile occurred later and overwrote your handler info in
the .map file?)
3) You don't have the latest .jar / .class / .map file(s) in your app.
4) You didn't provide an @annotation for your handler -- obviously if
this is forgotten, it won't be registered.
The info.jsf page should always show the most current handler
information... it gets this dynamically and shows all the known handlers
/ factories.
FYI, for others reading this... to access the info.jsf page, you must
have the "com.sun.jsftemplating.DEBUG" jvm variable set to "true"
(-Dcom.sun.jsftemplating.DEBUG=true) and then goto:
http://<server>:<port>/<context-root>/info.jsf This will show you all
the handlers/components that are known the the jsftemplating project.
Ken
Priti Tiwary wrote:
> Hi Ken,
> how can we make sure after changing a handler in
> admin-jsf/src/java.../handler package that, it reflects the changes in
> info.jsf file.?
> I have tried ant clean and dev-build in admin-jsf directory and still
> see the old stale info.jsf.
> Priti