[ 
https://issues.apache.org/jira/browse/AXIS2-5341?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ami Bender updated AXIS2-5341:
------------------------------

    Attachment: RescursiveTestWSDL.wsdl
                ResponseMessage.txt
                test.xsd
                RescursiveTestWSDL.wsdl

FIles necessary to reproduce the issue
                
> Recursion within a extension causes an ADBException: Unexpected subelement 
> XXXX
> -------------------------------------------------------------------------------
>
>                 Key: AXIS2-5341
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5341
>             Project: Axis2
>          Issue Type: Bug
>          Components: adb
>    Affects Versions: 1.6.2
>         Environment: JBoss 4.3.2, Ubuntu 11.10
>            Reporter: Ami Bender
>         Attachments: RescursiveTestWSDL.wsdl, RescursiveTestWSDL.wsdl, 
> ResponseMessage.txt, test.xsd
>
>
> when receiving a response message for the following WSDL, I get a 
> "org.apache.axis2.databinding.ADBException: Unexpected subelement XXXX". This 
> appears to be caused by a recursive call within a extension
> 2012-06-13 16:10:38,728 ERROR org.apache.axis2.AxisFault: 
> org.apache.axis2.databinding.ADBException: Unexpected subelement notes
>     at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
>     at 
> uk.co.test.temp.recursivetest.all.all.service.RecursiveTestServiceStub.fromOM(RecursiveTestServiceStub.java:4188)
>     at 
> uk.co.test.temp.recursivetest.all.all.service.RecursiveTestServiceStub.retrieveValues(RecursiveTestServiceStub.java:190)
> WSDL
> <?xml version="1.0" encoding="UTF-8"?>
> <definitions xmlns="http://schemas.xmlsoap.org/wsdl/"; 
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";   
> xmlns:tns="http://test.co.uk/temp/recursivetest/all/all/service"; 
> name="RecursiveTestService" 
> targetNamespace="http://test.co.uk/temp/recursivetest/all/all/service"; 
> xmlns:iagins="http://test.co.uk/temp/test/all/all";>
>       <types>
>               <xsd:schema 
> targetNamespace="http://test.co.uk/temp/recursivetest/all/all/service";>
>                       <xsd:import 
> namespace="http://test.co.uk/temp/test/all/all"; schemaLocation="./test.xsd"/>
>                       <!-- TYPES REQUIRED FOR PARAMETERS -->
>                       <xsd:complexType name="RequestBody">
>                               <xsd:sequence>
>                                       <xsd:element name="id" 
> type="xsd:string" minOccurs="0" maxOccurs="1"/>
>                               </xsd:sequence>
>                       </xsd:complexType>
>                       <xsd:complexType name="ResponseBody">
>                               <xsd:sequence>
>                                       <xsd:element name="responseValue" 
> type="iagins:ResponseBodyContent"/>
>                               </xsd:sequence>
>                       </xsd:complexType>
>                       <xsd:element name="Request" type="tns:RequestBody"/>
>                       <xsd:element name="Response" type="tns:ResponseBody"/>
>                       <!-- end of TYPES REQUIRED FOR PARAMETERS -->
>               </xsd:schema>
>       </types>
>       <!-- SERVICE BLOCKS -->
>       <message name="RetrieveRequest">
>               <part name="parameters" element="tns:Request"/>
>       </message>
>       <message name="RetrieveResponse">
>               <part name="parameters" element="tns:Response"/>
>       </message>
>       <!-- end of MESSAGE BLOCKS -->
>       <!-- PORT TYPES -->
>       <portType name="RecursiveTestServicePort">
>               <operation name="retrieveValues">
>                       <input message="tns:RetrieveRequest"/>
>                       <output message="tns:RetrieveResponse"/>
>               </operation>
>       </portType>
>       <!-- end of PORT TYPES -->
>       <!-- BINDINGS -->
>       <binding name="RecursiveTestServiceBinding" 
> type="tns:RecursiveTestServicePort">
>               <soap:binding transport="http://schemas.xmlsoap.org/soap/http"; 
> style="document"/>
>               <operation name="retrieveValues">
>                       <soap:operation soapAction=""/>
>                       <input>
>                               <soap:body use="literal"/>
>                       </input>
>                       <output>
>                               <soap:body use="literal"/>
>                       </output>
>               </operation>
>       </binding>
>       <!-- end of BINDINGS -->
>       <!-- Service -->
>       <service name="RecursiveTestService">
>               <port name="RecursiveTestServicePort" 
> binding="tns:RecursiveTestServiceBinding">
>                       <soap:address 
> location="http://localhost:14001/temp/recursivetest/all/all/service"/>
>               </port>
>       </service>
> </definitions>
> test.xsd
> <?xml version="1.0" encoding="UTF-8"?>
> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
> xmlns:tns="http://test.co.uk/temp/test/all/all"; 
> targetNamespace="http://test.co.uk/temp/test/all/all";>
>       <xsd:complexType name="ResponseBodyContent">
>               <xsd:complexContent>
>                       <xsd:extension base="tns:AbstratObject">
>                               <xsd:sequence>
>                                       <xsd:element name="responseValue" 
> type="xsd:string"/>
>                               </xsd:sequence>
>                       </xsd:extension>
>               </xsd:complexContent>
>       </xsd:complexType>
>       <xsd:complexType name="AbstratObject">
>               <xsd:sequence>
>                       <xsd:element name="notes" type="tns:Note" minOccurs="0" 
> maxOccurs="unbounded"/>
>               </xsd:sequence> 
>       </xsd:complexType>
>       <xsd:complexType name="Note">
>               <xsd:complexContent>
>                       <xsd:extension base="tns:AbstratObject">
>                               <xsd:sequence>
>                                       <xsd:element name="temp" 
> type="xsd:string" minOccurs="0" maxOccurs="1"/>
>                               </xsd:sequence>
>                       </xsd:extension>
>               </xsd:complexContent>
>       </xsd:complexType>
> </xsd:schema>
> Response message
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"; 
> xmlns:ser="http://test.co.uk/temp/recursivetest/all/all/service";>
>    <soapenv:Header/>
>    <soapenv:Body>
>       <ser:Response>
>          <responseValue>
>             <notes>
>                <notes>
>                   <notes>
>                      <notes/>
>                      <temp>Recursive3</temp>
>                   </notes>
>                   <temp>Recursive2</temp>
>                </notes>
>                <temp>Recursive1</temp>
>             </notes>
>             <temp>1234</temp>
>             <responseValue>?</responseValue>
>          </responseValue>
>       </ser:Response>
>    </soapenv:Body>
> </soapenv:Envelope>

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to