[
https://issues.apache.org/jira/browse/AXIS2-5341?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ami Bender updated AXIS2-5341:
------------------------------
Description:
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)
was:
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>
> 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)
--
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]