You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by babloosony <ba...@gmail.com> on 2005/02/07 13:54:38 UTC
Problem in custom axis (De)Serializers - Please help
Hi All,
I am using JiBX for implementing my own (De)Serializers replacing AXIS
default (De)Serializers. However when I register my (De)Serializers
with AXIS's server-config.wsdd file and start my web service deployed
on WebSphere 5.0, I am getting below detailed server stack trace :
[2/6/05 17:04:20:345 IST] 39ce702e WebGroup I SRVE0180I:
[Apache-Axis] [/Axis11Rc2IrscEjbWeb] [Servlet.LOG]: AdminServlet: init
[2/6/05 17:04:20:814 IST] 39ce702e WebGroup I SRVE0180I:
[Apache-Axis] [/Axis11Rc2IrscEjbWeb] [Servlet.LOG]:
SOAPMonitorService: init
[2/6/05 17:05:03:204 IST] 152a3029 WebGroup I SRVE0180I:
[Apache-Axis] [/Axis11Rc2IrscEjbWeb] [Servlet.LOG]: AxisServlet: init
[2/6/05 17:05:07:236 IST] 152a3029 WebGroup E SRVE0026E: [Servlet
Error]-[: incorrect call to interface method ]:
java.lang.IncompatibleClassChangeError: : incorrect call to interface
method
at com.tri.TriJibxDeser.onEndElement(TriJibxDeser.java:74)
at org.apache.axis.encoding.DeserializerImpl.endElement(DeserializerImpl.java:534)
at org.apache.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java:1001)
at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:204)
at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:718)
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:232)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:346)
at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:184)
at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:330)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:120)
at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:475)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:323)
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:854)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:339)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:948)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:530)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:176)
at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:79)
at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:201)
at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:71)
at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:182)
at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.java:334)
at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56)
at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:610)
at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:431)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:593)
Here is the code of my JiBX Deserializer java class :
--------------------------------------------------------
public class TriJibxDeser extends DeserializerImpl
{
public TriJibxDeser(Class clas, QName qname, IUnmarshallingContext uctx)
{
m_javaType = clas;
m_xmlType = qname;
m_context = uctx;
}
public void onEndElement(String ns, String lname,
DeserializationContext dctx)
throws SAXException
{
if(!m_xmlType.getNamespaceURI().equals(ns) ||
!m_xmlType.getLocalPart().equals(lname))
{
throw new SAXException("incompatable type passed to JiBX
deserializer");
}
MessageElement element = dctx.getCurElement();
if(element != null)
{
String text = null;
try
{
text = element.toString();
value = m_context.unmarshalDocument(new StringReader(text));
}
catch(JiBXException e)
{
throw new SAXException("error in JiBX deserialization
: " + e.getMessage(), e);
}
catch(Exception e)
{
throw new SAXException("Error reading element text: "
+ e.getMessage(), e);
}
}
}
private static Log s_log;
private QName m_xmlType;
private Class m_javaType;
private IUnmarshallingContext m_context;
}
--------------------------------------------------------
Can anyone tell how do I go ahead and debug this problem and find a
solution. Please suggest ?
Thanks & Regards,
Kumar.