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!