You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Davanum Srinivas (JIRA)" <ax...@ws.apache.org> on 2005/04/29 02:44:08 UTC

[jira] Commented: (AXIS-1966) .NET interop: rpc/encoded array of array: regression from RC2

     [ http://issues.apache.org/jira/browse/AXIS-1966?page=comments#action_64022 ]
     
Davanum Srinivas commented on AXIS-1966:
----------------------------------------

Tim,

Can you please upload both the .NET client test client and the Axis test client?

thanks,
dims

> .NET interop: rpc/encoded array of array: regression from RC2
> -------------------------------------------------------------
>
>          Key: AXIS-1966
>          URL: http://issues.apache.org/jira/browse/AXIS-1966
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: current (nightly)
>  Environment: Axis 1.2RC3 nightly
>     Reporter: Tim K
>     Priority: Blocker
>  Attachments: RemoteLoginManager.wsdl, axisRequest.xml, dotNetRequest.xml
>
> NOTE: This is a regression from RC2, hence a blocker bug.
> Please see the attached WSDL. The complex type AttributeRequest worked fine with .NET as a client and Axis RC2, but it stopped working with the latest CVS.
> Attachments:
> - RemoteLoginManager.wsdl - WSDL file
> - dotNetRequest.xml - the SOAP request sent by a .NET client
> - axisRequest.xml - the same request but from an Axis client, to compare the encodings with the .NET client request
> This is an interop issue, the .NET client is not able to send something like this:
> AttributeRequest[] nestedUserar = new AttributeRequest[1];
> nestedUserar[0] = new AttributeRequest();
> nestedUserar[0].setAttributeName(Attributes.LOCK_TYPE);
>         
> AttributeRequest[] userar = new AttributeRequest[1];
> userar[0] = new AttributeRequest();
> userar[0].setAttributeName(Attributes.LOCKS);
> userar[0].setRequestedAttributes(nestedUserar);
>         
> remoteLoginStub.login("bla", "bla", new NamedValue[0], userar);
> The following exception is thrown on the server side:
> ----
> Apr 28, 2005 9:39:24 AM org.apache.axis.encoding.ser.BeanPropertyTarget set
> SEVERE: Could not convert [Loracle.ifs.fdk.AttributeRequest; to bean field 'requestedAttributes[0]', type 
> oracle.ifs.fdk.AttributeRequest
> Apr 28, 2005 9:39:24 AM org.apache.axis.transport.http.AxisServlet processAxisFault
> INFO: AxisFault:
> AxisFault
>  faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
>  faultSubcode: 
>  faultString: java.lang.IllegalArgumentException: array element type mismatch
>  faultActor: 
>  faultNode: 
>  faultDetail: 
>         {http://xml.apache.org/axis/}stackTrace:java.lang.IllegalArgumentException: array element type mismatch
>         at java.lang.reflect.Array.set(Native Method)
>         at org.apache.axis.utils.BeanPropertyDescriptor.set(BeanPropertyDescriptor.java:183)
>         at org.apache.axis.encoding.ser.BeanPropertyTarget.set(BeanPropertyTarget.java:91)
>         at org.apache.axis.encoding.DeserializerImpl.valueComplete(DeserializerImpl.java:249)
>         at org.apache.axis.encoding.ser.ArrayDeserializer.valueComplete(ArrayDeserializer.java:570)
>         at org.apache.axis.encoding.DeserializerImpl.endElement(DeserializerImpl.java:509)
>         at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
>         at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:171)
>         at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1140)
>         at org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImpl.java:369)
>         at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1048)
>         at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
>         at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1140)
>         at org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImpl.java:369)
>         at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1048)
>         at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
>         at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1140)
>         at org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImpl.java:369)
>         at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1048)
>         at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
>         at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1140)
>         at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:236)
>         at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
>         at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:148)
>         at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:319)
>         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:760)
>         at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
>         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source)
>         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:16)
>         at oracle.ifs.fdk.http.HttpServerManager.doFilter(HttpServerManager.java:93)
>         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:20)
>         at oracle.ifs.fdk.http.AxisSecurityFilter.doFilter(AxisSecurityFilter.java:83)
>         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:645)
>         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322)
>         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:790)
>         at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:208)
>         at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:125)
>         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
>         at java.lang.Thread.run(Thread.java:534)
>         {http://xml.apache.org/axis/}hostname:stadc37.us.oracle.com
>         {http://xml.apache.org/axis/}isRuntimeException:true
> java.lang.IllegalArgumentException: array element type mismatch
>         at org.apache.axis.AxisFault.makeFault(AxisFault.java:101)
>         at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:329)
>         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:760)
>         at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
>         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source)
>         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:16)
>         at oracle.ifs.fdk.http.HttpServerManager.doFilter(HttpServerManager.java:93)
>         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:20)
>         at oracle.ifs.fdk.http.AxisSecurityFilter.doFilter(AxisSecurityFilter.java:83)
>         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:645)
>         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322)
>         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:790)
>         at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:208)
>         at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:125)
>         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
>         at java.lang.Thread.run(Thread.java:534)
> Caused by: java.lang.IllegalArgumentException: array element type mismatch
>         at java.lang.reflect.Array.set(Native Method)
>         at org.apache.axis.utils.BeanPropertyDescriptor.set(BeanPropertyDescriptor.java:183)
>         at org.apache.axis.encoding.ser.BeanPropertyTarget.set(BeanPropertyTarget.java:91)
>         at org.apache.axis.encoding.DeserializerImpl.valueComplete(DeserializerImpl.java:249)
>         at org.apache.axis.encoding.ser.ArrayDeserializer.valueComplete(ArrayDeserializer.java:570)
>         at org.apache.axis.encoding.DeserializerImpl.endElement(DeserializerImpl.java:509)
>         at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
>         at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:171)
>         at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1140)
>         at org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImpl.java:369)
>         at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1048)
>         at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
>         at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1140)
>         at org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImpl.java:369)
>         at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1048)
>         at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
>         at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1140)
>         at org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImpl.java:369)
>         at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1048)
>         at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
>         at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1140)
>         at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:236)
>         at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
>         at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:148)
>         at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:319)
>         ... 22 more
> ---
> NOTE: This is a regression from RC2, hence a blocker bug.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira