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/06/10 05:12:18 UTC

[jira] Resolved: (AXIS-1883) 1.2-RC3 failing to accept complex types with arrays as parameters

     [ http://issues.apache.org/jira/browse/AXIS-1883?page=all ]
     
Davanum Srinivas resolved AXIS-1883:
------------------------------------

    Resolution: Duplicate

duplicate of bug AXIS-2021 

> 1.2-RC3 failing to accept complex types with arrays as parameters
> -----------------------------------------------------------------
>
>          Key: AXIS-1883
>          URL: http://issues.apache.org/jira/browse/AXIS-1883
>      Project: Axis
>         Type: Bug
>     Versions: 1.2RC3
>  Environment: j2sdk1.4.2_07, JBoss-4.0.1, Windows XP, Axis 1.2-RC3 and CVS as of today (03/16/2005)
>     Reporter: Chad Brandon
>     Priority: Critical

>
> I have a client application which sends some complex
> value objects as parameters to some wrapped/literal
> services.  These all worked fine in 1.2-RC1 and
> 1.2-RC2, however in RC3, I get the below stack trace.
>  
> I thought maybe the stubs were not in sync with the
> WSDL (since I've seen this error before when that
> wasn't the case), but I made sure I regenerated the
> java2wsdl stubs with RC3.  I then also tried executing
> the same thing through soap scope and got the same
> error: "org.xml.sax.SAXException: Found character data
> inside an array element while deserializing",.
>  
> After that, I tried going back to RC2 and things
> worked fine as before.
>  
> Next I tried checking out the axis sources from CVS
> and got the same error as below.
>  
> It seems to happen whenever the parameter has an array
> within it.
> 17:16:56,859 ERROR [StudyAction] Error performing execute
> AxisFault
>  faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
>  faultSubcode:
>  faultString: org.xml.sax.SAXException: Found character data inside an array element while deserializing
>  faultActor:
>  faultNode:
>  faultDetail:
>         {http://xml.apache.org/axis/}hostname:cbrandon
> org.xml.sax.SAXException: Found character data inside an array element while deserializing
>         at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:221)
>         at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:128)
>         at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
>         at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
>         at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
>         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
>         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
>         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
>         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
>         at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
>         at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
>         at javax.xml.parsers.SAXParser.parse(Unknown Source)
>         at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
>         at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
>         at org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
>         at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
>         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
>         at org.apache.axis.client.Call.invokeEngine(Call.java:2754)
>         at org.apache.axis.client.Call.invoke(Call.java:2737)
>         at org.apache.axis.client.Call.invoke(Call.java:2413)
>         at org.apache.axis.client.Call.invoke(Call.java:2336)
>         at org.apache.axis.client.Call.invoke(Call.java:1793)
>         at edu.duke.dcri.siteresearch.ws.SiteResearchServiceSoapBindingStub.updateStudy(SiteResearchServiceSoapBindingSt
> ub.java:6281)
> I've compared the requests (since that's what it fails on) as Dims suggested (using soap scope) and they are structured exactly the same between RC2 and RC3, here's the request that's being sent (pasted from soap scope):
> - + <soap:Envelope
>     xmlns:impl="http://edu.duke.dcri.siteresearch"
>     xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
>     xmlns:xs="http://www.w3.org/2001/XMLSchema"
>     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
>    - + <soap:Body>
>       - + <impl:updateStudy>
>          - + <impl:study>
>             - + <impl:studyId>1</impl:studyId>
>             - + <impl:shortName>TestStudy</impl:shortName>
>             - + <impl:description>this study is for testing purposes only</impl:description>
>               <impl:protocolNumber />
>               <impl:studyEnrollmentEstimate />
>               <impl:sponsorSiteId />
>               <impl:projectCd />
>               <impl:fundCd />
>               <impl:spsCd />
>             - + <impl:therapeuticArea>Cardiology</impl:therapeuticArea>
>             - + <impl:phase>I</impl:phase>
>               <impl:note />
>               <impl:siteEnrollmentEstimate />
>             - + <impl:studyAccounts>
>                - + <impl:item>
>                   - + <impl:studyaccountId>1</impl:studyaccountId>
>                     <impl:note xsi:nil="true" />
>                   - + <impl:role>Site Organization</impl:role>
>                   - + <impl:studyId>1</impl:studyId>
>                   - + <impl:account>
>                      - + <impl:accountId>1</impl:accountId>
>                      - + <impl:accountName>Duke - University</impl:accountName>
>                        <impl:webSiteAddress xsi:nil="true" />
>                        <impl:note xsi:nil="true" />
>                      - + <impl:accountType>Hospital</impl:accountType>
>                      - + <impl:address>
>                           <impl:officeName xsi:nil="true" />
>                           <impl:streetAddress1 xsi:nil="true" />
>                           <impl:streetAddress2 xsi:nil="true" />
>                           <impl:streetAddress3 xsi:nil="true" />
>                         - + <impl:city>Colorado Springs</impl:city>
>                           <impl:postalCd />
>                           <impl:phoneNumber />
>                           <impl:faxNumber />
>                         - + <impl:state>AL</impl:state>
>                         - + <impl:country>US</impl:country>
>                        </impl:address>
>                     </impl:account>
>                  </impl:item>
>                - + <impl:item>
>                   - + <impl:studyaccountId>2</impl:studyaccountId>
>                     <impl:note />
>                     <impl:role />
>                   - + <impl:studyId>1</impl:studyId>
>                   - + <impl:account>
>                      - + <impl:accountId>3</impl:accountId>
>                      - + <impl:accountName>Jon Hopkins</impl:accountName>
>                        <impl:webSiteAddress />
>                        <impl:note />
>                      - + <impl:accountType>Hospital</impl:accountType>
>                      - + <impl:address>
>                           <impl:officeName />
>                           <impl:streetAddress1 />
>                           <impl:streetAddress2 />
>                           <impl:streetAddress3 />
>                           <impl:city />
>                           <impl:postalCd />
>                           <impl:phoneNumber />
>                           <impl:faxNumber />
>                           <impl:state />
>                           <impl:country />
>                        </impl:address>
>                     </impl:account>
>                  </impl:item>
>                - + <impl:item>
>                   - + <impl:studyaccountId>3</impl:studyaccountId>
>                   - + <impl:note>AddedRole</impl:note>
>                   - + <impl:role>Site Facility</impl:role>
>                   - + <impl:studyId>1</impl:studyId>
>                   - + <impl:account>
>                      - + <impl:accountId>3</impl:accountId>
>                      - + <impl:accountName>Jon Hopkins</impl:accountName>
>                        <impl:webSiteAddress />
>                        <impl:note />
>                      - + <impl:accountType>Hospital</impl:accountType>
>                      - + <impl:address>
>                           <impl:officeName />
>                           <impl:streetAddress1 />
>                           <impl:streetAddress2 />
>                           <impl:streetAddress3 />
>                           <impl:city />
>                           <impl:postalCd />
>                           <impl:phoneNumber />
>                           <impl:faxNumber />
>                           <impl:state />
>                           <impl:country />
>                        </impl:address>
>                     </impl:account>
>                  </impl:item>
>               </impl:studyAccounts>
>             - + <impl:currentStudyStatusEvent>
>                - + <impl:studyStatusEventId>1</impl:studyStatusEventId>
>                - + <impl:studyStatusDate>2005-03-07T07:00:00.000Z</impl:studyStatusDate>
>                - + <impl:isCurrent>true</impl:isCurrent>
>                - + <impl:studyStatusCode>Pending</impl:studyStatusCode>
>                - + <impl:owningStudyId>1</impl:owningStudyId>
>               </impl:currentStudyStatusEvent>
>            </impl:study>
>         </impl:updateStudy>
>      </soap:Body>
>   </soap:Envelope>
> The responses are obviously different, for RC2 (or RC1) I get the correct response and for RC3 I get this failure:
>       - + <soapenv:Fault>
>          - + <faultcode>soapenv:Server.userException</faultcode>
>          - + <faultstring>org.xml.sax.SAXException: Found character data inside an array element while deserializing</faultstring>
>          - + <detail>
>             - + <ns1:hostname xmlns:ns1="http://xml.apache.org/axis/">cbrandon</ns1:hostname>
>            </detail>
>         </soapenv:Fault>

-- 
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