You are viewing a plain text version of this content. The canonical link for it is here.
Posted to kandula-dev@ws.apache.org by "Kyle L. (JIRA)" <ji...@apache.org> on 2010/07/15 22:12:50 UTC
[jira] Created: (AXIS2-4781) WSDL2Java stub generation alternatives
leads to inheritance issues
WSDL2Java stub generation alternatives leads to inheritance issues
------------------------------------------------------------------
Key: AXIS2-4781
URL: https://issues.apache.org/jira/browse/AXIS2-4781
Project: Axis2
Issue Type: Bug
Components: Tools
Affects Versions: 1.5.1
Environment: Linux/Unix
Reporter: Kyle L.
WSDL: https://webservice.s4.exacttarget.com/etframework.wsdl
Service 'RetrieveResponseMsg' has the following definition:
<element name="RetrieveResponseMsg">
<complexType>
<sequence>
<element name="OverallStatus" type="xsd:string" minOccurs="1" maxOccurs="1" />
<element name="RequestID" type="xsd:string" minOccurs="0" maxOccurs="1" />
<element name="Results" type="tns:APIObject" minOccurs="0" maxOccurs="unbounded" />
</sequence>
</complexType>
</element>
The 'Results' element is defined as APIObject. However, if a response comes back from the server as:
<?xml version='1.0' encoding='utf-8'?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Header>
XXX
</soap:Header>
<soap:Body>
<RetrieveResponseMsg xmlns="http://exacttarget.com/wsdl/partnerAPI">
<OverallStatus>OK</OverallStatus>
<RequestID>XXX/RequestID>
<Results xsi:type="ObjectExtension">
<PartnerKey xsi:nil="true" />
<CreatedDate>2010-07-07T12:42:06.96</CreatedDate>
<ObjectID xsi:nil="true" />
<Type>SubscriberStatusEvent</Type>
<Properties>
<Property>
<Name>CurrentStatus</Name>
<Value>XXX</Value>
</Property>
<Property>
<Name>SubscriberKey</Name>
<Value>XXX</Value>
</Property>
</Properties>
</Results>
<Results xsi:type="ObjectExtension">
...
</Results>
<Results xsi:type="ObjectExtension">
...
</Results>
...
</RetrieveResponseMsg>
</soap:Body>
</soap:Envelope>
ObjectExtension is defined as follows:
<complexType name="ObjectExtension">
<complexContent>
<extension base="tns:APIObject">
<sequence>
<element name="Type" minOccurs="0" maxOccurs="1" type="string" />
<element name="Properties" minOccurs="0" maxOccurs="1">
<complexType>
<sequence>
<element name="Property" minOccurs="0" maxOccurs="unbounded" type="tns:APIProperty" />
</sequence>
</complexType>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
Note that ObjectExtension has APIObject as a base definition.
When the target web service responds with ObjectExtension objects, the AXIS response handler blows up stating that it cannot map the ObjectExtension type.
However, if I generate the java stubs as follows:
$AXIS_HOME/bin/wsdl2java.sh -ss -g -o src/main/java --noBuildXML -uri https://webservice.s4.exacttarget.com/etframework.wsdl
The same response is parsed without any issues.
Perhaps I am misunderstanding some subtlety, but this seems to me as a bug. Let me know if you need any more details.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org