> Different messages arriving in a different order, for one. Classes are > only loaded on demand, not simply because they exist in a defined library. > > > I would suppose the classloading ritual is a serial process, > > instead of a parallel process. > > Nope. In a multi-threaded environment, you cannot predict who's going to > reference what class first, unless you have extremely tight control over > event ordering. There is a very, very small period when there's a global > lock set during classloading, but other than that, it's pretty much a > free-for-all. > > Aha. Stupid of me. I thought all classes were loaded at startup, instead of at invocation.
> What I'm saying is that I don't think that any class in > > common/lib references to spring. > > You keep referring to common/lib but stated earlier that you're running on > 6.0.20, and common/lib does not exist on that level; have you modified > conf/catalina.properties to utilize that directory? If so, why, and what > happens if you keep things as they were intended? > > My bad. I just meant catalina_home/lib. I currently don't have access to the server to check catalina_home/lib contents, but I do have the webapp.war here. So I did a grep for the ContextLoaderListener and it turns out there are 2 libraries in my web-inf/lib containing a class definition for that: spring-2.5.6.jar and spring-web-2.5.6.jar Maybe one is interfering with the other