Hot Deployment is flucky to say the least and drives me nuts.
I have altered the profiles.xml file to not exclude WEB-INF/dev. Sometimes the components get reloaded but sometimes not (POJO components see below). I can see the timestamp of the classes changing in WEB-INF/dev but SEAM does not pick them up sometimes.
Consider the following POJO:
public class SayHello { @Logger private Log log; @In StatusMessages statusMessages; // @In // Identity identiy; public void sayHello() { // implement your business logic here log.info("sayHello.sayHello() action called!"); statusMessages.add("sayHello.sayHello() test!"); } }
If you change the statusMessage hot deployment works fine. Now remove the comments and inject the identity hot deplyment doesnt work anymore. If you do a full deploy you will find out that you need
@In(required=false)
What is really the issue here, is that even if you fix the error, hot deployment will not start to work until you have done a full deployment.
In IMHO this make Seam hot deployment unusable.
Perhaps I miss something here that breaks my hot deployment. Any advice how to fix this? Do experience the same issue?
Shall I make a JIRA entry?
JBoss-5.1/EAP-5.1, Seam-2.2.1.Final, Eclipse Helios R1, JBossTools nightly builds (26/2/11) but I don't think it is the IDE.