I switched over to using Seam trunk to prepare some demos for my
talks
and I quickly discovered that hot deployment is not working. The
problem is that the hot deployment routine in Initialization is trying
to access a non-initialized private field, hotDeploymentStrategy. In
Seam 2.0, the strategy was setup both at initial deployment and hot
deployment. In Seam trunk, the setup does not occur during hot
deployment.
I fixed it by changing (around line 664):
//TODO open the ability to reuse the classloader by looking at the
components class classloaders
// Rescan
hotDeploymentStrategy.scan();
// And install
installHotDeployableComponents();
Pages
.instance
().setHotDotPageDotXmlFileNames
(DotPageDotXmlDeploymentHandler.hotInstance().getFiles());
to:
createHotDeployment(Thread.currentThread().getContextClassLoader());
//
Pages
.instance
().setHotDotPageDotXmlFileNames
(DotPageDotXmlDeploymentHandler.hotInstance().getFiles());
I had to comment out the scanning for new .page.xml files because
somewhere it was throwing a null pointer that I didn't track down.
-Dan
--
Dan Allen
Software consultant | Author of Seam in Action
http://mojavelinux.com
http://mojavelinux.com/seaminaction
NOTE: While I make a strong effort to keep up with my email on a daily
basis, life and work come first and, at times, keep me away from my
mail
for a while. If you contact me, then don't hear back for more than a
week,
it is very likely that I am excessively backlogged or the message was
caught in the spam filters. Please don't hesitate to resend a
message if
you feel that it did not reach my attention.
_______________________________________________
seam-dev mailing list
seam-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/seam-dev