I'm using Axis 1.4. I have a Stateless EJB deployed in JBoss as a webservice. My webservice has a custom handler that intercepts the soap message and persists it into a database. The soap message then continues on its way to the EJB. This all works great.
I'm trying to write a client that will retrieve the persisted soap message from the database and then re-send the soap message to the webservice. I'm close however I'm getting this exception "org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize" Anyone have any ideas what I might be doing wrong? Below is the client code, followed by the exception that I'm getting... Service service = new Service(); Call call = (Call) service.createCall(); call.setTargetEndpointAddress(new java.net.URL(endpointUrl)); SOAPBodyElement[] input = new SOAPBodyElement[1]; Element inputQuery = buildInputQuery(queryFileName); input[0] = new SOAPBodyElement(inputQuery); Vector elems = (Vector) call.invoke(input); org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize. at org.apache.axis.encoding.ser.SimpleDeserializer.onStartChild( SimpleDeserializer.java:145) at org.apache.axis.encoding.DeserializationContext.startElement( DeserializationContext.java:1035) at org.apache.axis.message.SAX2EventRecorder.replay( SAX2EventRecorder.java:165) at org.apache.axis.message.MessageElement.publishToHandler( MessageElement.java:1141) at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:345) at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384) at org.apache.axis.providers.java.RPCProvider.processMessage( RPCProvider.java:81) at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java :323) at org.apache.axis.strategies.InvocationStrategy.visit( InvocationStrategy.java:32) at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83) at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java :453) at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281) at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java :699) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.axis.transport.http.AxisServletBase.service( AxisServletBase.java:327) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter( ApplicationFilterChain.java:173) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter( ReplyHeaderFilter.java:81) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter( ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke( StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke( StandardContextValve.java:178) at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke( CustomPrincipalValve.java:39) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke( SecurityAssociationValve.java:159) at org.jboss.web.tomcat.security.JaccContextValve.invoke( JaccContextValve.java:59) at org.apache.catalina.core.StandardHostValve.invoke( StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke( ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke( StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service( CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java :856) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection (Http11Protocol.java:744) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket( PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run( MasterSlaveWorkerThread.java:112) at java.lang.Thread.run(Thread.java:534)