If you are deploying Axis2 in a WAR/EAR under Websphere 6.1 with Web services feature pack or Websphere 7.0, please read the following tech notes:
- The Apache Axis2 servlet is not accessible after deploying the Apache Axis2 engine
- Deploying an application that contains the Apache Axis2 runtime might create a class cast exception
You can search for newer technotes here:
http://www.ibm.com/support/us/en/
Exceptions like the following:
SRVE0026E: [Servlet Error]-[javax.servlet.UnavailableException: SRVE0201E:
Servlet [org.apache.axis2.transport.http.AxisServlet]: not a servlet class
java.lang.ClassCastException: org.apache.axiom.om.impl.llom.OMTextImpl incompatible with org.apache.axiom.om.impl.OMNodeEx
SRVE0100E: Did not realize init()
exception thrown by servlet AxisServlet: java.lang.StackOverflowError
This will answer some of the problem on Axis2 mailing list.
Comment by Deepal — March 12, 2009 @ 10:39 pm
As the technote says, the trick is to set the war classloader order to parent last, and not just the enterprise application classloader order. This is easy to screw up, so if you are on WebSphere 7 and you used the default name of axis2_war, be absolutely sure you navigate to
Enterprise Applications > axis2_war > Manage Modules > axis2.war
and NOT Enterprise Applications > axis2_war > Class loader
Comment by Lee Surprenant — November 20, 2009 @ 1:32 am
I followed the article and changed the class loader policy to Parent last in “Manage Modules of my AXIS2 web application”. I am getting ClassCastException
Caused by: java.lang.ClassCastException: org.apache.xerces.jaxp.validation.XMLSchemaFactory incompatible with javax.xml.validation.SchemaFactory
at javax.xml.validation.SchemaFactory.newInstance(Unknown Source)
at com.ibm.ws.jpa.management.JPAPxmlInfo.extractPersistenceUnits(JPAPxmlInfo.java:239)
What are the things that I need in Websphere 7.0 to get my Axis2 WebServices Web Application working? I deployed the war file into Websphere Application Server 7.0 Trial Version.
Comment by Srini — February 18, 2010 @ 1:41 pm