I have a WSDL (generated by gSOAP) that I need to slightly modify before it will work
with the current version of Axis' WSDL2Java. What is the XSL look like to perform the
following transformation? I am using the <style> Ant task to perform the
transformation when doing a build of my client.
Transform all references to unsupported Schema unsigned types to regular types
supported by Axis/JAXRPC.
Change Schema complexType derivation from restriction to extension when the base is
anyType.
Some examples:
Translate xsd:unsignedInt to xsd:int, and xsd:duration to xsd:string
<complexType name="PoolInfo">
<all>
<element name="size" type="xsd:unsignedInt" minOccurs="0" maxOccurs="1"/>
<element name="agentTimeout" type="xsd:duration" minOccurs="0" maxOccurs="1"
nillable="true"/>
</all>
</complexType>
to
<complexType name="PoolInfo">
<all>
<element name="size" type="xsd:int" minOccurs="0" maxOccurs="1"/>
<element name="agentTimeout" type="xsd:string" minOccurs="0" maxOccurs="1"
nillable="true"/>
</all>
</complexType>
Translate derivation with base of anyType from restriction to extension.
<complexType name="IOSpec">
<complexContent>
<restriction base="xsd:anyType">
<sequence>
<element name="spec" type="ts:stringData" minOccurs="0" maxOccurs="1"/>
<element name="specType" type="xsd:string" minOccurs="0" maxOccurs="1"
nillable="true"/>
</sequence>
</restriction>
</complexContent>
</complexType>
to
<complexType name="IOSpec">
<complexContent>
<extension base="xsd:anyType">
<sequence>
<element name="spec" type="ts:stringData" minOccurs="0" maxOccurs="1"/>
<element name="specType" type="xsd:string" minOccurs="0" maxOccurs="1"
nillable="true"/>
</sequence>
</extension>
</complexContent>
</complexType>