cancel
Showing results for 
Search instead for 
Did you mean: 

java.lang.IncompatibleClassChangeError by using AXIS in SAP NW

Former Member
0 Kudos

Hi all,

I wrote a web programm using AXIS 1.2. I have no problem to deploy the EAR onto NW AS and can deploy a service onto this web application. But as I try to call the service I got exception´as follow. Someone has idea?

I am sure one or some of the jar files used in the programm are not compatible with that of SAP. But which one?

My web application runs no problem by Tomcat.


#1.5 #000C297AEFDA00650000002C00000A9000044155A603AAAD#1197736054125#System.err#sap.com/myAxisEar#System.err#Guest#0####a3e9b1d0ab2a11dca861000c297aefda#SAPEngine_Application_Thread[impl:3]_30##0#0#Error##Plain###15.12.2007 17:27:34 org.apache.axis.transport.http.AxisServlet logException
INFO: Exception:
java.lang.IncompatibleClassChangeError
	at org.apache.axis.message.MessageElement.addTextNode(MessageElement.java:1387)
	at org.apache.axis.message.SOAPHandler.addTextNode(SOAPHandler.java:148)
	at org.apache.axis.message.SOAPHandler.endElement(SOAPHandler.java:112)
	at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
	at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1712)
	at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
	at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
	at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
	at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
	at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
	at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
	at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:667)
	at org.apache.crimson.parser.Parser2.parse(Parser2.java:337)
	at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448)
	at javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
	at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
	at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
	at org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
	at org.apache.axis.server.AxisServer.initSOAPConstants(AxisServer.java:345)
	at org.apache.axis.server.AxisServer.invoke(AxisServer.java:279)
	at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
	at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
	at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
	at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:387)
	at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:365)
	at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:944)
	at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:266)
	at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
	at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
	at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
	at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
	at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
	at java.security.AccessController.doPrivileged(Native Method)
	at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
	at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)

Message was edited by:

Thomas Roland

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

I solve this problem. I use the Axis 1.1 and everything is ok.

Seems SAP uses very old version of some JARs.

SAP is very backquard in sence of Java.

Vlado
Advisor
Advisor
0 Kudos

Hi Thomas,

What do you mean by "backquard", in particular w.r.t. SAP?

Thanks,

\-- Vladimir

Former Member
0 Kudos

I solve this problem. I use the Axis 1.1 and everything is ok.

Seems SAP uses very old version of some JARs.

SAP is very backquard in sence of Java.

Vlado
Advisor
Advisor
0 Kudos

Hmm, it would be hard to say without the name of the class. This error happens if your program depends on some class but is running against a different version of the class which is incompatible with the version it was compiled against. You should try to debug to find what the class is.

Former Member
0 Kudos

Folowing is the code. The exception comes from the code inside try:


...
org.apache.axis.client.Call _call = super._createCall();
...
try{
    java.lang.Object _resp = _call.invoke(new java.lang.Object[] {in0, in1});
}
...

I am not sure if the class version of "org.apache.axis.client.Call" not compatible. MAybe the axis use another class an dthis is not compatible with that in SAP.

Sounds quite difficult to figure it out.