[seam-dev] java.lang.IllegalStateException: No phase id bound to current thread (make sure you do not have two SeamPhaseListener instances installed))

Pete Muir pmuir at redhat.com
Thu Apr 9 07:38:46 EDT 2009


Guys,

You should only have one jboss-seam.jar per application. Period.  
Please stop trying to invent new packaging schemes ;-)

Knowing Max, the next question is "Why?". Yes, the WAR classloader  
will hide the EAR classloader, however you end up with two problems:

* if you try to load a component on the WAR classloader, then use it  
in the EJB jar, you will get a CCE (this is a bonus problem to the one  
you found)
* classloaders don't just load classes, they also posses the ability  
to load resources, and also (critically) the ability to load all the  
resources in every classpath root on the classpath. So, if you add  
jboss-seam.jar twice, all the resources inside will be on the  
classpath twice. And, in fact, this behaviour is logical, and correct  
if you think it through.

So, please fix this in JBT :-)

On 9 Apr 2009, at 11:50, Max Rydahl Andersen wrote:

>
>>> Dan, as discussed before this is a broken design - duplicates on a  
>>> classpath is not illegal; only the first one should be listened to  
>>> AFAIK.
>>>
>>> Snjezana, if you remove the seam.jar from web-inf/lib does the  
>>> compilation still work ? Or is it WTP that is putting it in there  
>>> for us ?
>>
>> The compilation always works.
>> WTP is not putting this file in there. It is possible that earlier  
>> versions of JBoss Tools (before releasing JBoss AS 4.2.3) were  
>> copying the file to WEB-INF/lib.
> I don't think JBoss tools changed behavior in this aspect. The  
> question is if JBT EAR projects actually put the seam jar both in  
> ear and in web-inf/lib in the projects (not the deploy).
> That should not have any sideeffects (but it does because of the way  
> seam 2.1.x is doing things), but if that is the case then we can fix  
> it by not having the web-inf/lib/seam.jar.
>
> /max
>>
>> Snjeza
>>> /max
>>>> -Dan
>>>>
>>>> -- 
>>>> Dan Allen
>>>> Senior Software Engineer, Red Hat | Author of Seam in Action
>>>>
>>>> http://mojavelinux.com
>>>> http://mojavelinux.com/seaminaction
>>>> http://in.relation.to/Bloggers/Dan
>>>>
>>>> NOTE: While I make a strong effort to keep up with my email on a  
>>>> daily
>>>> basis, personal or other work matters can sometimes keep me away
>>>> from my email. If you contact me, but 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 at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/seam-dev

--
Pete Muir
http://www.seamframework.org
http://in.relation.to/Bloggers/Pete




More information about the seam-dev mailing list