Uploaded image for project: 'Application Server 3  4  5 and 6'
  1. Application Server 3 4 5 and 6
  2. JBAS-3844

"array element type mismatch" when deserializing JAX-RPC value type properties of array type when size >2

    XMLWordPrintable

Details

    • Bug
    • Resolution: Obsolete
    • Major
    • None
    • JBossAS-4.0.3 SP1
    • Web Services
    • None

    Description

      We experience a problem with the WS4EE stack on JBoss 4.0.3 when deserializing JAX-RPC value type properties of array type when the number of elements is greater than 2 and when the request envelope was created by a .NET client. There are similar issues reported on AXIS. Here's a typical stack trace we get:

      14:59:13,330 ERROR [BeanPropertyTarget] Could not convert [Lcrm.application.business.common.customersvc.CallDataObject; to bean field 'typedElements[2]', type [Lcrm.application.business.common.customersvc.CallDataObject;
      14:59:13,390 ERROR [RPCInvocation] java.lang.IllegalArgumentException: array element type mismatch
      java.lang.IllegalArgumentException: array element type mismatch
      at org.jboss.axis.encoding.ser.BeanPropertyTarget.set(BeanPropertyTarget.java:243)
      at org.jboss.axis.encoding.DeserializerImpl.valueComplete(DeserializerImpl.java:305)
      at org.jboss.axis.encoding.DeserializerImpl.endElement(DeserializerImpl.java:590)
      at org.jboss.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java:1269)
      at org.jboss.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:252)
      at org.jboss.axis.message.SOAPElementAxisImpl.publishToHandler(SOAPElementAxisImpl.java:1394)
      at org.jboss.axis.message.RPCElement.deserialize(RPCElement.java:266)
      at org.jboss.axis.message.RPCElement.getParams(RPCElement.java:402)
      at org.jboss.axis.providers.java.RPCInvocation.prepareFromRequestEnvelope(RPCInvocation.java:235)
      at org.jboss.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:103)
      at org.jboss.axis.providers.java.JavaProvider.invoke(JavaProvider.java:358)
      at org.jboss.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:73)
      at org.jboss.axis.SimpleChain.doVisiting(SimpleChain.java:160)
      at org.jboss.axis.SimpleChain.invoke(SimpleChain.java:123)
      at org.jboss.axis.handlers.soap.SOAPService.invoke(SOAPService.java:560)
      at org.jboss.webservice.server.ServerEngine.invokeInternal(ServerEngine.java:215)
      at org.jboss.webservice.server.ServerEngine.invoke(ServerEngine.java:104)
      at org.jboss.axis.transport.http.AxisServlet.doPost(AxisServlet.java:911)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      at org.jboss.axis.transport.http.AxisServletBase.service(AxisServletBase.java:370)
      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:96)
      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.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:524)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
      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:869)
      at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
      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:595)

      Message:

      <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
      <soap:Header>
      <wsa:Action>
      </wsa:Action>
      <wsa:MessageID>urn:uuid:6bdec88b-6594-4cae-81a5-628b86b75699</wsa:MessageID>
      <wsa:ReplyTo>
      <wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address>
      </wsa:ReplyTo>
      <wsa:To>http://localhost:8082/ws/customersvc</wsa:To>
      <wsse:Security>
      <wsu:Timestamp wsu:Id="Timestamp-b935bb5d-4a72-4b8d-ba5d-d529e18cc23e">
      <wsu:Created>2006-11-10T13:59:13Z</wsu:Created>
      <wsu:Expires>2006-11-10T14:04:13Z</wsu:Expires>
      </wsu:Timestamp>
      </wsse:Security>
      </soap:Header>
      <soap:Body>
      <setCustomerDo xmlns="http://logic.business.application.crm">
      <update xmlns="">
      <deleted>false</deleted>
      <created>true</created>
      <pruned>true</pruned>
      <Original xsi:nil="true" />
      <CRC>0</CRC>
      <customerId>0002</customerId>
      <contractDate>2006-11-07T00:00:00</contractDate>
      <call>
      <typedElements>
      <deleted>false</deleted>
      <created>true</created>
      <pruned>true</pruned>
      <Original xsi:nil="true" />
      <CRC>0</CRC>
      <callResolved>false</callResolved>
      <callDescription xsi:nil="true" />
      <callTimestamp>0001-01-01T00:00:00</callTimestamp>
      </typedElements>
      <typedElements>
      <deleted>false</deleted>
      <created>true</created>
      <pruned>true</pruned>
      <Original xsi:nil="true" />
      <CRC>0</CRC>
      <callResolved>false</callResolved>
      <callDescription xsi:nil="true" />
      <callTimestamp>0001-01-01T00:00:00</callTimestamp>
      </typedElements>
      <typedElements>
      <deleted>false</deleted>
      <created>true</created>
      <pruned>true</pruned>
      <Original xsi:nil="true" />
      <CRC>0</CRC>
      <callResolved>false</callResolved>
      <callDescription xsi:nil="true" />
      <callTimestamp>0001-01-01T00:00:00</callTimestamp>
      </typedElements>
      </call>
      <firstName>Andre</firstName>
      <serviceAgreement>
      <deleted>false</deleted>
      <created>true</created>
      <pruned>true</pruned>
      <Original xsi:nil="true" />
      <CRC>0</CRC>
      <serviceLevel>
      <value>1</value>
      </serviceLevel>
      <saDescription>Medium Service</saDescription>
      <saPrice>50.95</saPrice>
      <customer />
      <saId>0001</saId>
      </serviceAgreement>
      <customerTitle>Mr</customerTitle>
      <lastName>Bos</lastName>
      <address>
      <countryCode>31</countryCode>
      <phone xsi:nil="true" />
      <zipCode>1005 BB</zipCode>
      <street>Hoogoorddreef</street>
      <city>Amsterdam</city>
      <stateCode xsi:nil="true" />
      <email>Reinier.Bos@nl.compuware.com</email>
      </address>
      </update>
      </setCustomerDo>
      </soap:Body>
      </soap:Envelope>

      Attachments

        Activity

          People

            tdiesler@redhat.com Thomas Diesler
            ilchen_jira Andrei Iltchenko (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: