WSDL Tutorials - Herong's Tutorial Examples - v2.22, by Herong Yang
Convert WSDL 1.1 to 2.0 with Woden API
This section provided a tutorial example to show to invoke the org.apache.woden.tool.converter.Convert class from Woden Java API to convert WSDL 1.1 documents to WSDL 2.0.
There is also a nice WSDL 1.1 to WSDL 2.0 conversion tool included in the Woden Java API. You can run it by invoking the org.apache.woden.tool.converter.Convert class:
herong> java -cp .;\local\axis2\lib\* \
org.apache.woden.tool.converter.Convert
3:30:53 PM org.apache.woden.tool.converter.Convert printUsage
SEVERE: Error: No WSDL 1.1 document was specified (use '-wsdl' argument.)
Usage:
java org.apache.woden.tool.converter.Convert [args]
args:
-wsdl file-or-URL-of-wsdl1.1-document
[-targetNS new-target-namespace]
[-dir targetDir] default: .
[-verbose (on|off)] default: on
[-overwrite (on|off)] default: off (Overwrite existing files?)
Let's try it with my Hello WSDL 1.1 document:
herong> java -cp .;\local\axis2\lib\* \ org.apache.woden.tool.converter.Convert -wsdl Hello_WSDL_11_SOAP.wsdl Retrieving document at 'Hello_WSDL_11_SOAP.wsdl'. 3:35:49 PM org.apache.woden.tool.converter.Utils getOutputStream INFO: Created file '/Users/herong/Hello_WSDL_11_SOAP.wsdl2'. 3:35:49 PM org.apache.woden.tool.converter.Convert main INFO: Done. Elapsed time: 109ms
Here is the WSDL 2.0 document generated by the tool:
<description xmlns="http://www.w3.org/ns/wsdl"
targetNamespace="https://www.herongyang.com/Service/"
xmlns:wsoap="http://www.w3.org/ns/wsdl/soap"
xmlns:hy="https://www.herongyang.com/Service/"
xmlns:tns="https://www.herongyang.com/Service/">
<types>
<xsd:schema
targetNamespace="https://www.herongyang.com/Service/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="HelloRequest" type="xsd:string"/>
<xsd:element name="HelloResponse" type="xsd:string"/>
</xsd:schema>
</types>
<interface name="helloPortType">
<operation name="Hello"
pattern="http://www.w3.org/ns/wsdl/in-out">
<input messageLabel="In" element="hy:HelloRequest"/>
<output messageLabel="Out" element="hy:HelloResponse"/>
</operation>
</interface>
<binding name="helloBinding"
interface="hy:helloPortType"
type="http://www.w3.org/ns/wsdl/soap"
wsoap:version="1.1"
wsoap:protocol="http://www.w3.org/2006/01/soap11/bindings/HTTP">
<operation ref="hy:Hello"
wsoap:action="https://www.herongyang.com/Service/Hello">
</operation>
</binding>
<service name="helloService" interface="hy:helloPortType">
<endpoint name="helloPort"
binding="hy:helloBinding"
address="https://www.herongyang.com/Service/Hello_SOAP_11.php">
</endpoint>
</service>
</description>
Good job. Of course, it does not use any predefined message styles specified in the "WSDL Version 2.0 Part 2: Adjuncts" specification.
Table of Contents
WSDL 2.0 Document Structure and Syntax
WSDL Version 2.0 Part 2: Adjuncts
WSDL 2.0 Document Examples with SOAP Binding
Using WSDL Document in Java Apache Axis2/Java for WSDL
►Apache Woden for WSDL Documents in Java
What Is Apache Woden - WSDL Parser API
Java API for WSDL 2.0 Component Model
WodenHelloComponent.java - Testing WSDL 2.0 Components
Java API for WSDL 2.0 Element Model
WodenHelloElement.java - Testing WSDL 2.0 Elements
Wsdl20Validator.java - WSDL 2.0 Validator
WSDL 2.0-2 Adjuncts Not Supported by Woden API
►Convert WSDL 1.1 to 2.0 with Woden API
SoapUI - Web Service Testing Tool
WSDL 1.1 Document Structure and Syntax
WSDL 1.1 Binding Extension for SOAP 1.1
SoapUI as WSDL 1.1 Testing Tool
WSDL 1.1 and SOAP 1.1 Examples - Document and RPC Styles
PHP SOAP Extension for WSDL 1.1
Apache Axis2/Java for WSDL 1.1
Using WSDL2Java to Generate Web Service Stub Classes
WSDL 1.1 Binding Extension for SOAP 1.2
WSDL 1.1 and SOAP 1.2 Examples - Document and RPC Styles