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 Noel Tijerino <ti...@llnl.gov> on 2002/06/27 05:58:10 UTC

RE: custom serialization

I just started working on this and I ran into the exact same error doing 
the exact same thing. Did you ever figure out what the problem was?

<< Hi guys,

  I just looking at my exception, and can't go any further.
Maybe you can help me, I'm sure its just some easy thing that
I did wrong. Anyway, I wanted to try custom serlialization, and
made  a WSDL.=20

Here is the relevant fragment:=20
---------------------------------
       <complexType name=3D"MyData">
         <sequence>
           <element name=3D"s1" type=3D"string"/>
           <element name=3D"s2" =
type=3D"string"/></sequence></complexType>
----------------------------------

I have my own serlializer/deserializer classes for this data type.
They are mapped to the type in the WSDD (inside service tag).
=20
-----------------------
       <typeMapping
         xmlns:ns="http://hello.org/types"
         qname="ns:MyData"
         type="java:com.nokia.joker.capacity.encoding.MyData"
         serializer="com.nokia.joker.capacity.encoding.DataSerFactory"
         =
deserializer="com.nokia.joker.capacity.encoding.DataDeserFactory"
         encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
       />
----------------------------

I have an Axis client calling a method with a MyData parameter. The
request seems to pass without problems, the object is serlialized, it =
contains
the correct values.

But the server side gives me this. What did I do wrong ? Should I send
some more information ? I assume that something went wrong during = 
deserialization.
Br, Geza
---------------------------------------------------
- Exception:
org.xml.sax.SAXException: Bad types (null -> class = 
com.nokia.joker.plugin.MyData)
org.xml.sax.SAXException: Bad types (null -> class = 
com.nokia.joker.plugin.MyData)
         at = 
org.apache.axis.message.RPCHandler.onStartChild(RPCHandler.java:205)
         at = 
org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:831)
         at = 
org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:199)
         at = 
org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:589)
         at = 
org.apache.axis.message.RPCElement.deserialize(RPCElement.java:190)
         at = org.apache.axis.message.RPCElement.getParams(RPCElement.java:248)
         at = 
org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:150)
         at = 
org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:262)
         at = 
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
         at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:154)
         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:121)
         at org.apache.axis.server.AxisServer.invoke(AxisServer.java:288)
         at = 
org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:576)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at = 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
         at = 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
         at = 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
         at = 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
         at = 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
         at = 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
         at = 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)
         at = 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
         at = 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
         at = 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
         at = 
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2343)
         at = 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
         at = 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
         at = 
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
         at = 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
         at = 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
         at = 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
         at = 
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468)
         at = 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
         at = 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
         at = 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
         at = 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
         at = 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
         at = 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
         at = 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
         at = 
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1012)
         at = 
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1107)
         at java.lang.Thread.run(Thread.java:484)


 >>

Noel Tijerino
Lawrence Livermore National Laboratory
tijerino1@llnl.gov
work: 925.422.0473

Stick that in your compiler and de-bug it!