Dear JBoss Users,
I am trying to migrate a war-application (that was already running on Tomcat) to JBoss5.1.0GA. After some revaluation of my web.xml file and some fighting with JBoss-classloading it is finally possible to deploy it. Yippee!
BUT! Now I have a following problem while running the application:
java.lang.NoSuchMethodError: org.apache.commons.collections.CollectionUtils.isNotEmpty(Ljava/util/Collection;)Z
After some "investigation" I've found, that it's because of the jboss-5.1.0.GA/common/lib/commons-collections.jar version is prior to 3.2.
My application is however configured for the isolated classloading by the "jboss-classloading.xml":
<?xml version="1.0" encoding="UTF-8"?>
<classloading xmlns="urn:jboss:classloading:1.0"
name="reportal.war"
domain="MyWar_Domain"
export-all="NON_EMPTY"
import-all="false">
</classloading>
Thats why I would expect my application to use a commons-collections-3.2.jar from WEB-INF/lib folder within the application war folder. What obviously is not the case.
Replacing the jboss-5.1.0.GA/common/lib/commons-collections.jar with a newer version solves the problem. It is though not really a preferred option cause of the requirement I have - in an optimal way there should be as less customization on JBoss as possible.
The question now is:
Why isn't the applications own commons-collections.jar loaded?
How do I can achieve it?