Generating a single WSDL interface from several others
How can I generate a WSDL interface from several different WSDL interfaces?
Suppose we have three Web service components. All of them are regarding an online car reservation service, however they have different WSDL interfaces.
My question is how to automatically generate a WSDL interface based on
the other three WSDL interfaces?
I'm not quite sure what you mean by "interface" (you might be referring to <portType> or <service> elements), but either way, I don't know of any tools that can "automatically" generate a single WSDL definition from multiple WSDL definitions. I think your only option is to edit the WSDLs using a text/XML/WSDL editor. The simplest approach is simply to create a new WSDL definition and import the pre-existing WSDL definitions. For example:
<w:definitions name="new" targetNamespace="urn:new"
<w:import namespace="urn:old1" location="http://foo.org/old1.wsdl"/>
<w:import namespace="urn:old2" location="http://foo.org/old2.wsdl"/>
<w:import namespace="urn:old3" location="http://foo.org/old3.wsdl"/>
Note that this approach won't do anything to integrate the pre-existing definitions-- it simply makes all three definitions available in a single WSDL definition.
This was first published in November 2003