Set UseJBossWebLoader=false to get the same behavior as in 3.0.x (jbossweb-tomcat/META-INF/jboss-service.xml)
I had asked scott whether the default behavior of classloaders was changed recently across EAR files. I see too many guys that didn't have the problem in 3.0 where visibility was COMPLETE (that was the whole point of it) to having to go with J2EE standard mess and packaging hell.
what is going on?
Visibility was not complete in case of WEB-INF/lib and WEB-INF/classes before, now it is but when people deploy same app multiple times they don't expect this behavior.
That's what the JBossWebLoader attribute does, it switches the WEB-INF to either one way (servlet can see flat space but others don't see its WEB-INF) or two-way (default, WEB-INF is added to the flat namespace).
It works well, thanks all of you.
Of course users don't expect this kind of behavior. It was already the case with EARs in 3.0 with the UCL from hell. It just went even worse.
Nobody expect an app server to work this way, and BTW JBoss is the only one to do so. I just hope this will be clarified in the next version of J2EE, so you guys are forced to do a "normal" classloader.
I'm sorry for the flaming, but I am *so* annoyed by the UCL.