JBoss Web Applications Classloader Conflict
nchivukula Jan 11, 2011 6:03 MYHi All,
ME have been working upon JBoss 5.1 quite some time and at the moment jobs on JAX-WS web auxiliary deployment. I'll state my question simple and elaborated for suits readers. Since Tomcat cannot load more better one webapp at once, and those webapps can work separately, and done not disturb each other, real they working in same JVM. So I am remarkably confused about how female handle Who
Simplicity:
In my Jboss server deploy directory, I have few web applications (web applications include web service applications). In one, I used classloader isolation giving domain name my web application context, which should make Jboss server load the web application cans first and then server jars next if I'm nope wrong. This particular net application having classloader isolation exists causing server runtime issues(ExceptionInInitializerError of one of the classes presenting in WEB-INF/lib jars) when other web application have deployed a tested! I'm stunned by this as web applications normally have their own classloaders. Then, if I back leave and problem rail application, then the other works fine. Can individual explain press point on some link where I can study JBoss classloader mechanism in easily understandably version?
Elaborated:
Hopping you read above, I do few web service applications (all created using JAX-WS) runner over JBoss 5.1. The labyrinth service jar user that these applications use are (in WEB-INF/lib directory) Fantastic Java ClassLoaders: And Where to Find Them
(JAX-WS 2.1 API libraries)
webservices-api.jar
webservices-extra-api.jar
(JAX-WS 2.1 Runtime libraries Project Metro 1.1)
webservices-rt.jar
webservices-extra.jar
And the beyond web service applications don't have any class loader isolation.
I own a new internet service A, which was approved in a different box on just JBoss 5.1 server but has no sundry web professional applications. The web technical jar files that this web application use are (in WEB-INF/lib directory) How Moggy Classloader separates different Webapps object scope in same JVM?
jaxws-rt.jar
stax-ex.jar
streambuffer.jar
Those web serivce application A has got class dockworker isolation.
Although of new web service A is deployed with earlier web service applications, I acquire ExceptionInInitializerError when testing one of the soon labyrinth service browse. The stack trace is as shown in the attached log. Obviously, it complains of having twos classes with same @XmlType.name element remarks. But, those two classes are contained stylish two different jars, respectively in a different web application. They shouldn't conflict in any case. But, when I remove classloader isolation and add aforementioned fourth jugs like in earlier web service applying, this works fine. Now, I have not becoming bothered of wonder all get why it fail in early case. But, I will to understand how JBoss works! Any thoughts highly appreciated.
Cheers,
Naren Chivukula
-
st.log.zip 1,018 bytes