I have two web apps:
- an older web app (directory app-prod.war in server/default/deploy)
- a newer web app (directory app-dev.war in server/default/deploy)
the two web apps are the same project, an older and a newer release.
The jars inside every WEB-INF/lib are the same, the newer has obviously new classes or new methos/attributes.
- JDK 1.4.2
- JBoss 3.2.6
- Spring 1.2.8
- Struts 1.2.9
- Web app version 2.4
When I start JBoss, the app-dev web app cannot deploy correctly because starts after app-prod web app. I think uses in its classpath the jars in WEB-INF/lib of the oldest web app: in fact it doesn't see the changes described in its Spring XML files because uses the jars of app-prod, which is inconsistent with XML files of more recent app-dev.
If I undeploy app-prod.war and reboot JBoss, app-dev.war is deployed correctly.
My questions are:
1) is there any JBoss configuration to set to force every web app uses in its classpath only the jar specified in the shared libraries and its WEB-INF/lib or WEB-INF/classes and not the jar specified in other web apps?
2) is there any JBoss configuration to set to force insert of jars in WEB-INF/lib and classes in WEB-INF/classes in classpath before shared libraries to prevent version incompatibility with jar's older version existing for example in server/default/lib?
NOTE: the same web apps in Tomcat 5.0.28 standalone starts correctly without problems.