Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
Java-SCA-1.6
-
None
-
JDK 1.6.0_21, Eclipse 3.6 Helios, Windows XP
Description
I have created a service using dynamic SDOs. The wsdl - generated by the Tuscany 1.6 runtime and downloaded from the service URL - cannot be imported in SOAP UI 3.5.1. It gives a NullPointerException.
Simon Laws found a namespace issue with the generated wsdl. It includes
<xs:import namespace="http://sdo.commonj/" />
which doesn't resolve to anything sensible. The type dataObject is defined here [1] but even then that's in a different namespace.
Ramanjaneyulu Malisetti solved this problem by editing the WSDL to have XS:any for the DataObject type. So the WSDL has the following.
<xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://sdo.commonj/" version="1.0" xmlns="http://sdo.commonj//">
<xs:complexType name="dataObject">
<xs:sequence>
<xs:element name="sdo" type="xs:anyType"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
Simon Nash believes it shouldn't be difficult (about 2 lines of code) to update the Tuscany WSDL generator to generate xs:anyType for the Java interface type commonj.sdo.DataObject and remove the import for http://sdo.commonj/.
[1] http://svn.apache.org/repos/asf/tuscany/sdo-java/trunk/sdo-api/src/main/resources/xml/sdoModel.xsd