[ http://issues.apache.org/jira/browse/AXIS-1966?page=comments#action_64544 ] Tim K commented on AXIS-1966: -----------------------------
Happy to report that the fix works. Thank you for your help! > .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
