Upon looking into it further, it looks like Axis Beta 2 is unable to handle HREFs where SOAP-ENC:root is not supplied. From the Axis client, SOAP-ENC:root is set to "0" on the attached bean. However, .NET is not including SOAP-ENC:root attributes. So the method call in the first body element is succeeding, but then RPCProvider is attempting to execute the attached bean as a method call, since bodyEl.isRoot() returns true for the attached bean with no SOAP-ENC:root. Since the root attribute is not required by the SOAP spec, shouldn't Axis be better handling those body elements that are not root elements but have the tag omitted? -Jason
> -----Original Message----- > From: Blumenkrantz, Jason > Sent: Wednesday, May 01, 2002 10:05 AM > To: Axis-User (E-mail) > Subject: Deserialization error upgrading from Beta 1 => Beta 2 > > I just upgraded my service from Beta 1 to Beta 2 and am getting a strange > error that I was never getting before. Beta 2 works for Axis-based > clients, but for .Net based clients, it fails on select (not all, but > some) method calls, with the following exception. The interesting part is > that the underlying method is being invoked on my service, and the correct > object is being returned, but I am getting this deserialization error > immediately after the return statement. I've looked at the SOAP request > XML and they look roughly equivalent. Any idea what has changed that may > cause this? > Thanks in advance > -Jason > [EMAIL PROTECTED] > > > [JavaProvider]Exception:: !! No Deserializer for null] > at > org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java > :136) > at > org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:262) > at > org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.jav > a: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.axix.transport.http.AxisServlet.doPost(AxisServlet.java:576) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:772) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:865) > at > allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1416) > at > allaire.jrun.session.JRunSessionService.service(../session/JRunSessionServ > ice.java:1082) > at > allaire.jrun.servlet.JRunSE.runServlet(../servlet/JRunSE.java:1270) > at > allaire.jrun.servlet.JRunRequestDispatcher.forward(../servlet/JRunRequestD > ispatcher.java:89) > at > allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1552) > at > allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1542) > at > allaire.jrun.servlet.JvmContext.dispatch(../servlet/JvmContext.java:364) > at > allaire.jrun.jrpp.ProxyEndpoint.run(../jrpp/ProxyEndpoint.java:388) > at allaire.jrun.ThreadPool.run(../ThreadPool.java:272) > at allaire.jrun.WorkerThread.run(../WorkerThread.java:75)