[jboss-jira] [JBoss JIRA] Created: (JBAS-3844) "array element type mismatch" when deserializing JAX-RPC value type properties of array type when size >2

Andrei Iltchenko (JIRA) jira-events at jboss.com
Fri Nov 10 11:37:42 EST 2006


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

                 Key: JBAS-3844
                 URL: http://jira.jboss.com/jira/browse/JBAS-3844
             Project: JBoss Application Server
          Issue Type: Bug
      Security Level: Public (Everyone can see)
          Components: Web Services
    Affects Versions: JBossAS-4.0.3 SP1
            Reporter: Andrei Iltchenko
         Assigned To: Thomas Diesler


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 at nl.compuware.com</email>
              </address>
            </update>
          </setCustomerDo>
        </soap:Body>
      </soap:Envelope>




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

        



More information about the jboss-jira mailing list