Web Services Developers Guide PDF
Web Services Developers Guide PDF
VERSION 6.0.1
webMethods, Inc.
3930 Pender Drive
Fairfax, VA 22030
USA
703.460.2500
http://www.webmethods.com
webMethods Administrator, webMethods Broker, webMethods Developer, webMethods Installer, webMethods Integration Server, webMethods Mainframe,
webMethods Manager, webMethods Modeler, webMethods Monitor, webMethods Workflow, webMethods Trading Networks, and the webMethods logo are
trademarks of webMethods, Inc. “webMethods” is a registered trademark of webMethods, Inc.
Acrobat, Adobe, and Reader are registered trademarks of Adobe Systems Incorporated. Amdocs and ClarifyCRM are registered trademarks of Amdocs Ltd.
Ariba is a registered trademark of Ariba Inc. Baan is a registered trademark of Baan Development NV. BEA is a registered trademark, and WebLogic Platform
and WebLogic Server are trademarks of BEA Systems, Inc. BMC Software and PATROL are registered trademarks of BMC Software, Inc. BroadVision is a
registered trademark of BroadVision, Inc. Chem eStandards and CIDX are trademarks of Chemical Industry Data Exchange. Unicenter is a registered
trademark of Computer Associates International, Inc. Kenan and Arbor are registered trademarks of CSG Systems, Incorporated. SNAP-IX is a registered
trademark, and Data Connection is a trademark of Data Connection Ltd. DataDirect, DataDirect Connect, and SequeLink are registered trademarks of
DataDirect Technologies. D&B and D-U-N-S are registered trademarks of D&B, Inc. Entrust is a registered trademark of Entrust. Hewlett-Packard, HP, HP-
UX, and OpenView are trademarks of Hewlett-Packard Company. i2 is a registered trademark of i2 Technologies, Inc. AIX, AS/400, CICS, DB2, IBM, Infoprint,
Informix, MQSeries, OS/390, OS/400, RACF, RS/6000, SQL/400, S/390, System/390, VTAM, and WebSphere are registered trademarks; and Communications
System for Windows NT, IMS, MVS, SQL/DS, Universal Database, and z/OS are trademarks of IBM Corporation. JBoss and JBoss Group are trademarks of
Marc Fleury under operation by JBoss Group, LLC. J.D. Edwards and OneWorld are registered trademarks, and WorldSoftware is a trademark of J.D.
Edwards. Linux is a registered trademark of Linus Torvalds and others. X Window System is a trademark of Massachusetts Institute of Technology. Merant is
a registered trademark of Merant, Inc. MetaSolv is a registered trademark of Metasolv Software, Inc. ActiveX, Microsoft, Outlook, Visual Basic, Windows, and
Windows NT are registered trademarks; and SQL Server is a trademark of Microsoft Corporation. Netscape is a registered trademark of Netscape
Communications Corporation. New Atlanta and ServletExec are trademarks of New Atlanta Communications, LLC. CORBA is a registered trademark of
Object Management Group, Inc. UNIX is a registered trademark of Open Group. Oracle is a registered trademark of Oracle Corporation. PeopleSoft and
Vantive are registered trademarks, and PeopleSoft Pure Internet Architecture is a trademark of PeopleSoft, Inc. Infranet and Portal are trademarks of Portal
Software, Inc. RosettaNet is a trademark of “RosettaNet,” a non-profit organization. SAP and R/3 are trademarks or registered trademarks of SAP AG. Siebel
is a trademark of Siebel Systems, Inc. EJB, Enterprise JavaBeans, Java, JavaServer Pages, JDBC, JSP, J2EE, Solaris, SPARC, SPARCStation, Sun, Sun
Microsystems, and SunSoft are trademarks of Sun Microsystems, Inc. SWIFT and SWIFTNet are trademarks of S.W.I.F.T. SCRL. Sybase is a registered
trademark of Sybase, Inc. UCCnet is a trademark of UCCnet. Verisign is a registered trademark of Verisign. VERITAS, VERITAS SOFTWARE, and VERITAS
Cluster Server are trademarks of VERITAS Software. W3C is a registered trademark of World Wide Web Consortium.
All other marks are the property of their respective owners.
Copyright © 2003 by webMethods, Inc. All rights reserved, including the right of reproduction in whole or in part in any form.
webM-IS-WS-20030320
Contents
Contents
Chapter 2. Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
What Is a Web Service? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Using webMethods Software to Invoke Web Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Using webMethods Software to Create Web Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
What Is a WSDL Document? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Information Required to Generate a WSDL Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
About Namespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
XML Namespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Integration Server Namespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Chapter 4. Generating a WSDL Document that Uses the SOAP RPC Protocol . . . . . . . . 25
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Service Requirements When Using the Default SOAP RPC Processor . . . . . . . . . . . . . . . . . . . . . . . 26
Input and Output Signature Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Generating the WSDL Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Chapter 5. Generating a WSDL Document that Uses the SOAP Message Protocol . . . . 33
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Service Requirements When Using the Default SOAP Processor . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Chapter 6. Generating a WSDL Document that Uses the HTTP POST or GET Protocol . . 45
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Service Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Input and Output Signature Requirements .......................................... 47
Text/XML Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
URL Encoded Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Generating the WSDL Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Welcome! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Related Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Welcome!
This guide is for users who want to create Web services and incorporate Web services into
the solutions they develop. This guide explains how to generate WSDL documents for
webMethods Web services and use webMethods software to call Web services located on
remote servers.
Conventions
Typographical Conventions
This document uses the following typographical conventions:
Convention Example
Procedures are designated by a blue To create a flow service
box in the left column. Procedures
are presented as a series of
numbered steps. 1 On the File menu, click New.
Terms that identify elements, The Service field on the Properties tab specifies
options, selections, and commands the name of the requested service.
on the screen are shown in bold.
Storage locations for services on the pub.client:smtp sets a MIME-type e-mail message.
Integration Server are shown in a
narrow font using the convention
folder.subfolder:service.
Characters that you must type Type: *Administrators*
exactly are shown in a typewriter
font.
Variable information that you must Log on to the proxy server with:
change (based on your specific
USER proxy_user
situation or environment) is shown
PASS proxy_password
in italics.
Input and output variables for a A service in the flow takes a document list
service are shown in italics. called LineItems.
Messages that the system displays The server returns the following error to the
on the console are shown in a user:
typewriter font.
Server has reached client limit.
Convention Example
Keys that you must press Press CTRL+ALT+M.
simultaneously are joined with the
“+” symbol.
Directory paths are shown with the webMethods6\IntegrationServer\config
“\” directory delimiter unless the
subject is UNIX specific. In these
cases, the “/” is used. If you are
working in a UNIX environment,
substitute a “/” for the “\” shown in
the procedures in this book.
Information that you must read
before beginning a procedure or Important! If the folder is not already
that alerts you to negative open in the Navigation Panel, open it
consequences of certain actions is before you start the following
presented using this notation. procedure.
Convention Example
Keywords and values that you must type %CoSymbol%
exactly as printed are shown in typewriter
font.
Variable values or parameters that you must %VarName%
supply are shown in italics.
Keywords or values that are optional are %loop LoopVar [null=NullValue]%
enclosed in [ ]. Do not type the [ ] symbols in
your own code.
Related Documentation
The following documents are companions to this guide. Some documents are in PDF
format and others are in HTML.
If you do not have this software or you do not have the correct version, you can download
a free copy from:
http://www.adobe.com/supportservice/custsupport/download.html.
With webMethods software, you can create Web services using programming languages
such as Java, C/C++, or COM. You can also create Web services from existing back-end
systems, without producing custom code or reconfiguring the back-end systems, using
webMethods adapters.
Use a Web services registry to publish a URL that identifies the location of the WSDL
document.
Note: A Web service provider can also distribute a WSDL document and supporting files
to Web service consumers directly.
Method to use to access the Web service, including the protocol that the Web service
consumer must use to invoke the Web service and receive a response.
Input parameters that the Web service consumer must supply to the Web service and
the output parameters that the Web service returns.
Information Description
Web service location Production Integration Server on which the Web service will
reside.
Protocol Protocol that Web service consumers must use to communicate
with the Web service. You can specify the SOAP RPC, SOAP
message (document), HTTP POST, or HTTP GET protocol.
Transport Request transport mechanism that Web service consumers must
use to invoke the Web service. You can specify HTTP or HTTPS,
depending on the port you are using.
Service signature Input parameters the Web service requires and output
parameters the Web service produces.
The service for which you generate a WSDL document, and the
input and output parameters that compose the service’s
signature, must meet certain requirements. These requirements
differ depending on the protocol you select for Web service
consumers to communicate with the Web service. For more
information about these requirements, see the individual
chapters that describe how to generate WSDL documents for
each type of protocol.
Target namespace Namespace to which elements, attributes, and type definitions
in the generated WSDL document will belong.
The subsystem of Integration Server that generates WSDL documents is called the WSDL
generator. The WSDL generator creates a WSDL document using the information you
provide along with information from the service.
About Namespaces
Namespaces are collections of names (for example, the names of XML Schema elements,
Integration Server document types, or Integration Server services). A namespace name is
associated with each collection to provide context for the named entities within the
collection. This helps prevent conflicts when the scope of a named entity extends beyond
its current context.
The following sections describe XML namespaces and namespace use within the
Integration Server.
XML Namespaces
By the World Wide Web Consortium (http://www.w3.org) definition, an XML namespace is
a collection of names identified by a URI reference. XML namespaces help avoid naming
conflicts by differentiating between element types or attributes with the same name in an
XML document. As long as these like-named element types or attributes reside in
different namespaces, they are considered different entities.
You can define a prefix to represent an XML namespace URI. Prefixes provide a way to
shorten the reference to the XML namespace URI. In the following XML Schema example,
the prefix address represents the XML namespace URI http://www.example.com:
xmlns:address="http://www.example.com"
You can use this prefix elsewhere in the XML document, in conjunction with an element's
local name attribute, to represent the full URI with which the prefix is associated. For
example:
<address:street>123 Main Street</address:street>
The name of an element type or attribute is referred to as its local name. When an element
type or attribute is associated with a namespace, its name (whether prefaced by a prefix or
not) is also known as an XML namespace qualified name (QName).
Note: The universal name should conform to the XML QName naming conventions
specified in http://www.w3.org/TR/REC-xml-names/#NT-QName.
Note: The WSDL generator defines prefixes in WSDL documents to represent specific
namespaces that identify a binding’s protocol. For more information about these prefixes
and their associated namespaces, see Appendix A, “WSDL Documents”.
In Developer, you assign XML namespaces and prefixes to Integration Server fields as
follows:
To assign an XML namespace to an Integration Server field, complete the XML
Namespace field on the General tab of the field’s Properties dialog box.
To assign a prefix to an Integration Server field, precede the field name with the prefix
followed by a colon (for example, prefix:variableName).
Note: In most cases, if you use a prefix you must also supply an XML namespace. For more
information, see the chapters in this guide for generating WSDL documents for each type
of protocol.
Note: The Web Service Connector wizard requires you to specify a WSDL document that
resides either on the Internet or on your local file system. If you do not have a WSDL
document and you would like to use Developer to create one, see the chapters in this
guide for generating WSDL documents that use the SOAP RPC, SOAP Message, HTTP
POST, or HTTP GET protocols.
Note: If the Web site on which the document resides is password protected, you
must download the WSDL document to your local file system, then create the
Web service connector.
If you want to create a Web service connector from a WSDL document that resides
on your local file system, click to navigate to and select the document.
5 Click Finish. Developer validates the WSDL document you selected, creates the
connector and supporting Integration Server elements, and saves the connector and
the elements to the folder you specified. For information about the IS elements that
Developer generates, see “Supporting Elements” on page 21.
Note: If Developer cannot create or cannot completely generate a Web service connector
from the WSDL document because the WSDL document is invalid or is missing WSDL
elements, Developer displays error messages or warning messages. For more information
about errors that can occur when generating connectors, see Appendix B, “Web Service-
Related Errors and Warnings”.
Supporting Elements
When Developer creates a Web service connector from a WSDL document, it also creates
supporting IS elements. Each of the IS elements that Developer creates corresponds to an
element in the WSDL document.
The following table identifies the IS elements that Developer might create when it
generates a Web service connector.
Developer inserts flow steps into the Web service connector by following an internal
template for inserting input data into the service request, sending the request, processing
the response, and adding service output values to the pipeline. The template that
Developer follows depends on the protocol specified in the WSDL document. The
following illustration shows the Web service connector generated for the Web service that
performs credit card authorization.
This SEQUENCE
corresponds to a binding
for the SOAP RPC
protocol.
Note: The $default port corresponds to the first named <port> element in the WSDL
document.
1 In the Navigation Panel, click the Web service connector you want to run.
2 Click . Developer displays the Input for ‘connector’ dialog box. The dialog box shows
the inputs required by the remote Web service.
3 Provide the input values, then click OK. Developer runs the connector, which calls the
remote Web service, and displays the results on the Results tab.
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Overview
When you specify SOAP RPC as the protocol for Web service consumers to use to
communicate with a Web service, the RPC processor will receive SOAP messages that call
the service. You can select either the default RPC processor or a registered, custom-built
SOAP RPC processor (for example, an access-controlled RPC processor). The processor
you select will receive requests for the Web service.
The Web service for which you are generating the WSDL document will be a target service
of the selected processor. Consequently, the service needs to conform to the target service
requirements for the specified processor.
If you select a custom SOAP RPC processor, make sure the service for which you are
generating the WSDL document conforms to the target service requirements for the
custom processor. The following section explains the service requirements if you want to
use the default SOAP RPC processor to receive and send SOAP messages for the service.
For information about creating custom SOAP RPC processors, see the SOAP Developer’s
Guide.
Document or Document list type fields can be Yes However, the Integration Server displays a
open (that is, contain a check mark in the Allow warning and marks the documents as “closed.”
unspecified fields check box on the Constraints
tab of the Variable Properties dialog box).
Top-level fields must be associated with an No The Integration Server ignores the XML
XML namespace. namespace value if present.
Fields beneath the top level must be No The Integration Server ignores the XML
associated with an XML namespace. namespace value if present.
Recursive documents are allowed. Yes The Integration Server will generate the WDSL
document but cannot create a Web service
connector from the WSDL document.
Field type constraints
Object constraints are allowed. Yes However, the WSDL generator does not
represent them in the WSDL document.
Strings constrained by older schema types Yes However, the WSDL generator maps them into
(types defined before the W3C XML 2001 2001 XML Schema types.
Schema recommendations) are allowed.
Note: By default, a field must exist at run time, can contain a null value, and (for document
type fields), cannot contain unspecified fields. If you change a field's default properties,
the WSDL generator reflects those changes in the schema section of the WSDL document.
However, the message element of a WSDL document cannot define these properties.
Therefore, when you use the WSDL document to generate a Web service connector, the
Integration Server uses the default properties for all top-level fields.
Stage Description
1 Identify the service for which you want to generate a WSDL document.
2 Specify the protocol and transport mechanism for Web service consumers to
use to communicate with the Web service.
1 In the Navigation Panel, select the service for which you want to generate a WSDL
document.
2 On the Tools menu, click Generate WSDL. Developer opens the Generate WSDL dialog
box.
3 In the Host box, type the numeric IP address or domain name of the host machine on
which the Web service will reside at production time.
By default, the Host box identifies the Integration Server on which the Web service
currently resides; that is, the Integration Server to which you are currently connected.
You do not need to specify http:// or https:// as part of the host name; the WSDL
generator automatically adds http:// or https:// (based on the transport
mechanism you specify in the Via Transport box) to the host name when it compiles the
network address for the Web service.
4 In the Port box, type the number of the port you want to use to accept requests for the
Web service from Web service consumers.
By default, the Port box identifies the port you used to connect to the current
Integration Server. If you want to use a different port, type the number of that port in
the Port box.
The port you identify must be able to accept either HTTP requests or HTTPS requests.
If you do not require that requests from Web service consumers be sent securely,
specify a port that accepts HTTP requests. If you want requests from Web service
consumers to be sent securely, specify a port that accepts HTTPS requests.
Note: The Directive list displays all registered SOAP processors on the Integration
Server to which you are currently connected. If you plan to move the service to a
production Integration Server, make sure the directive you select corresponds to a
SOAP processor that is registered on the production server as well.
Important! If you specify anything other than the default SOAP RPC processor, be
certain that the directive belongs to a SOAP RPC processor. Otherwise, requests for
this service will not be processed correctly.
For information about creating and registering your own SOAP RPC processor, see
the SOAP Developer’s Guide.
1 In the Target Namespace box, specify the target namespace for the WSDL document.
By default, the Target Namespace box displays http://host/ as the target namespace,
where host is the name of the server you are currently logged on to. If you want to
specify a different namespace, type the URI for that namespace in the box.
2 Click OK. Developer displays a dialog box that prompts you for a location and name
for the generated WSDL document.
1 Under Save in, select the directory in which you want to save the generated WSDL
document.
2 In the File name field, specify a name for the WSDL document. By default, Developer
assigns the document the name serviceName.wsdl.
3 Click Save. The WSDL generator generates the WSDL document. Developer then
displays a message that lists the WSDL document file and the directory in which it
stored the file.
4 Click OK.
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Overview
When you specify SOAP messaging as the protocol for Web service consumers to use to
communicate with a Web service, you can select the SOAP processor you want to use to
handle messages sent by the Web service consumers. You can select either the default
SOAP processor or a registered, custom-built SOAP processor (for example, an access-
controlled processor). The processor you select will receive, process, and send SOAP
messages that call the service.
The Web service for which you are generating the WSDL document will be a target service
of the selected processor. Consequently, the service needs to conform to the target service
requirements for the specified processor.
If you select a custom SOAP processor, make sure the service for which you are
generating the WSDL document conforms to the target service requirements for the
custom processor. The following section explains the service requirements if you want to
use the default SOAP processor to receive and send SOAP messages for the service. For
information about creating custom SOAP processors, see the SOAP Developer’s Guide.
In addition to these requirements, you should also check the target service’s Execute ACL
permission to ensure that consumers of the service can invoke it.
For more information about creating a target service for the default SOAP processor, see
the SOAP Developer’s Guide.
Important! To ensure interoperability with other Web service vendors, the Namespace
name value of the service’s explicit universal name must be a valid URI.
For example, suppose that the explicit universal name of the service
gl.journals:journalEntry has a namespace name of http://www.exprint.com/GL/ and a
local name of JournalEntry. The first top-level field of the IS document type that
describes the input signature must be named prefix:JournalEntry, where prefix
represents the XML namespace URI. Additionally, the value of the XML Namespace
property for the JournalEntry field must be http://www.exprint.com/GL/.
Note: The WSDL generator treats variables with the same QName as identical variables
even if the variables are declared as different types.
If a top-level field of the service’s input and output signature is of type String, the field
must be namespace qualified (that is, the Content type box on the Constraints tab of the
Properties panel contains a valid URI).
See the table on page 37 for additional requirements that apply to IS document types and
XML Schema element declarations used to represent the input or output signatures of a
WSDL document.
Object constraints are allowed. Yes However, the WSDL generator does not
represent them in the WSDL document.
Strings constrained by older schema types Yes However, the WSDL generator maps them into
(types defined before the W3C XML 2001 2001 XML Schema types.
Schema recommendations) are allowed.
Note: By default, a field must exist at run time, can contain a null value, and (for document
type fields), cannot contain unspecified fields. If you change a field's default properties,
the WSDL generator reflects those changes in the schema section of the WSDL document.
However, the message element of a WSDL document cannot define these properties.
Therefore, when you use the WSDL document to generate a Web service connector, the
Integration Server uses the default properties for all top-level fields.
Stage Description
1 Identify the service for which you want to generate a WSDL document.
2 Specify the protocol and transport mechanism for Web service consumers to
use to communicate with the Web service.
1 In the Navigation Panel, select the service for which you want to generate a WSDL
document.
2 On the Tools menu, click Generate WSDL. Developer opens the Generate WSDL dialog
box.
3 In the Host box, type the numeric IP address or domain name of the host machine on
which the Web service will reside at production time.
By default, the Host box identifies the Integration Server on which the Web service
currently resides; that is, the Integration Server to which you are currently connected.
You do not need to specify http:// or https:// as part of the host name; the WSDL
generator automatically adds http:// or https:// (based on the transport
mechanism you specify in the Via Transport box) to the host name when it compiles the
network address for the Web service.
4 In the Port box, type the number of the port you want to use to accept requests for the
Web service from Web service consumers.
By default, the Port box identifies the port you used to open the current Integration
Server. If you want to use a different port, type the number of that port in the Port box.
The port you identify must be able to accept either HTTP requests or HTTPS requests.
If you do not require that requests from Web service consumers be sent securely,
specify a port that accepts HTTP requests. If you want requests from Web service
consumers to be sent securely, specify a port that accepts HTTPS requests.
1 Under Protocol, click SOAP-MSG. Developer enables the Directive, Input, and Output
boxes.
Important! To ensure interoperability with other Web service providers, the Namespace
name value of the service’s explicit universal name must be a valid URI. Use the
Settings tab to assign a universal name to a service.
2 Under Via Transport, click the request transport mechanism that is accepted by the port
you specified in the Port box. If the port accepts HTTP requests, click HTTP. If the port
accepts HTTPS requests, click HTTPS.
3 From the Directive list, select the process directive for the SOAP processor you want to
use to receive, process, and send SOAP messages that invoke the target service. If you
want to use the default processor, click default.
Note: The Directive list displays all registered SOAP processors on the Integration
Server to which you are currently connected. If you plan to move the service to a
production Integration Server, make sure the directive you select corresponds to a
SOAP processor that is registered on the production server as well.
You can describe the input signature for the WSDL document using an IS document type
or using an element declaration from an XML Schema. Use one of the following
procedures to define the input message for the Web service.
1 Next to the Input box on the Generate WSDL dialog box, click . Developer opens the
Select Input/Output Constraint dialog box.
1 Next to the Input field, click . Developer opens the Select Input/Output Constraint
dialog box.
2 Under Choose Constraint Type, click Schema Component.
3 In the text field, after http://, type the Web location and name of the XML Schema that
contains the element declaration you want to use to describe the input signature.
Important! The XML Schema you identify must be located on the Web and must be
accessible to consumers of the WSDL.
4 Click Load. Developer groups the element declarations in the XML Schema under the
ELEMENTS heading. Expand the heading to view the global element declarations in
the XML Schema.
5 Select the global element declaration that you want to use to represent the input
signature.
6 Click OK. Developer closes the dialog box and displays the name of the selected
element declaration in the Input box on the Generate WSDL dialog box.
You can describe the output signature for the WSDL document using an IS document type
or using an element declaration from an XML Schema. See “To describe the input
signature for the Web service” on page 41 for instructions.
1 In the Target Namespace box, specify the target namespace for the WSDL document.
By default, the Target Namespace box displays http://host/ as the target namespace,
where host is the name of the server you are currently logged on to. If you want to
specify a different namespace, type the URI for that namespace in the box.
2 Click OK. Developer displays a dialog box that prompts you for a location and name
for the generated WSDL document.
1 Under Save in, select the directory in which you want to save the generated WSDL
document.
2 In the File name field, specify a name for the WSDL document. By default, Developer
assigns the document the name serviceName.wsdl.
3 Click Save. The WSDL generator generates the WSDL document. Developer then
displays a message that lists the WSDL document file and the directory in which it
stored the file.
4 Click OK.
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Service Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Overview
When you specify HTTP POST as the protocol for Web service consumers to use to
communicate with a Web service, you can specify text/XML or URL encoded as the input
format for the service. When you select HTTP GET as the protocol, Developer
automatically sets the input format to URL encoded.
When you specify HTTP POST or HTTP GET as the protocol for the WSDL document,
keep the following points in mind:
When you select URL encoded as the input format, the WSDL generator uses the
input parameters declared on the Input/Output tab of the service to create the input
message for the WSDL document. However, for the URL encoded input format, the
input signature can only contain String variables. The input signature should not
contain document, document list, Object, Object list, String list, or String table
variables because these variables cannot be represented in name=value pairs in the
HTTP request.
When you select text/XML as the input format, you can select an IS document type or
XML Schema component (element declaration) to describe the incoming XML
document.
For the HTTP protocols, Developer selects text/XML as the output format. You must
select an IS document type or XML Schema component (element declaration) to
represent the outbound XML document.
For more information about describing the service input and output for the HTTP
protocols, see “Input and Output Signature Requirements” on page 47.
Service Requirements
When you specify HTTP POST or HTTP GET as the protocol for a WSDL document, the
target service for which you are generating the WSDL document must meet these
requirements:
The service must return an XML document to Web service consumers. When
generating a WSDL document, the WSDL generator assumes that all services invoked
via an HTTP request will return an XML document (text/xml content). To return an
XML document, a service can do one of the following:
Call the pub.flow:setResponse service. This service takes any string and returns it as
the body of an HTTP response. For more information about the pub.flow:setResponse
service, see the webMethods Built-In Services Reference Guide.
Create and assign an XML output template to the service. You can use an XML
output template to extract values from the pipeline and insert those values as
element content in an XML tag. For more information about output templates, see
DSPs and Output Templates Developer’s Guide.
Important! You must use the pub.flow:setResponse service or an XML output template to
return an XML document, or Integration Server will return an HTML document to the
HTTP request.
If you select HTTP POST as the protocol and text/XML as the input format, the service
input signature must include an object type named node. When webMethods
Integration Server receives an HTTP POST request where the Content-Type header is
text/XML, the server automatically parses the body of the request (the XML
document) and passes it as an XML node to the service specified in the request’s URL.
To extract data from the returned node, you query it using the pub.xml:queryXMLNode
service or convert it to a document using the pub.xml:xmlNodeToDocument service.
Because an XML node object does not provide meaningful signature information for
the WSDL document, you can select an IS document type or XML Schema component
to describe the input signature. The IS document type or XML Schema component
you select describes the XML document the service expects as input. See “Input and
Output Signature Requirements” for more information about specifying IS document
types and XML Schema components.
In addition to these requirements, you should also check the target service’s Execute ACL
permission to ensure that consumers of the service can invoke it.
Text/XML Requirements
The following table lists the requirements for developing the service’s input and output
signature when text/XML is selected as the input or output format. The other chapters that
describe how to generate WSDL documents also contain this table so you can easily
compare requirements across protocols.
Service signature requirements when text/XML is specified as the input or output format
Object constraints are allowed. Yes However, the WSDL generator does not
represent them in the WSDL document.
Strings constrained by older schema types Yes However, the WSDL generator maps them into
(types defined before the W3C XML 2001 2001 XML Schema types.
Schema recommendations) are allowed.
Note: By default, a field must exist at run time, can contain a null value, and (for document
type fields), cannot contain unspecified fields. If you change a field's default properties,
the WSDL generator reflects those changes in the schema section of the WSDL document.
However, the message element of a WSDL document cannot define these properties.
Therefore, when you use the WSDL document to generate a Web service connector, the
Integration Server uses the default properties for all top-level fields.
In addition, The WSDL generator treats variables with the same QName as identical
variables even if the variables are declared as different types.
Service signature requirements when URL encoded is specified as the input format
Document or Document list type fields can be n/a The URL encoded input format does not
open (that is, contain a check mark in the Allow support Document or Document list type
unspecified fields check box on the Constraints fields.
tab of the Variable Properties dialog box).
Top-level fields must be associated with an No The URL encoded input format does not
XML namespace. support XML namespaces. Therefore, fields
must not be associated with an XML namespace.
Fields beneath the top level must be n/a The URL encoded input format does not
associated with an XML namespace. support documents.
Recursive documents are allowed. n/a The URL encoded input format does not
support documents.
Field type constraints
Object constraints are allowed. Yes However, the WSDL generator does not
represent them in the WSDL document.
Strings constrained by older schema types Yes However, the WSDL generator maps them into
(types defined before the W3C XML 2001 2001 XML Schema types.
Schema recommendations) are allowed.
Note: By default, a field must exist at run time, can contain a null value, and (for document
type fields), cannot contain unspecified fields. If you change a field's default properties,
the WSDL generator reflects those changes in the schema section of the WSDL document.
However, the message element of a WSDL document cannot define these properties.
Therefore, when you use the WSDL document to generate a Web service connector, the
Integration Server uses the default properties for all top-level fields.
In addition, The WSDL generator treats variables with the same QName as identical
variables even if the variables are declared as different types.
Stage Description
1 Identify the service for which you want to generate a WSDL document.
2 Specify the protocol and transport mechanism for Web service consumers to
use to communicate with the Web service.
1 In the Navigation Panel, select the service for which you want to generate a WSDL
document.
2 On the Tools menu, click Generate WSDL. Developer opens the Generate WSDL dialog
box.
3 In the Host box, type the numeric IP address or domain name of the host machine on
which the Web service will reside at production time.
By default, the Host box identifies the Integration Server on which the Web service
currently resides; that is, the Integration Server to which you are currently connected.
You do not need to specify http:// or https:// as part of the host name; the WSDL
generator automatically adds http:// or https:// (based on the transport
mechanism you specify in the Via Transport box) to the host name when it compiles the
network address for the Web service.
4 In the Port box, type the number of the port you want to use to accept requests for the
Web service from Web service consumers.
By default, the Port box identifies the port you used to open the current Integration
Server. If you want to use a different port, type the number of that port in the Port box.
The port you identify must be able to accept either HTTP requests or HTTPS requests.
If you do not require that requests from Web service consumers be sent securely,
specify a port that accepts HTTP requests. If you want requests from Web service
consumers to be sent securely, specify a port that accepts HTTPS requests.
1 Under Protocol, click HTTP-POST or HTTP-GET. Developer changes the boxes on the
dialog box. The following figure shows an example of the dialog box when you click
HTTP-POST; when you click HTTP-GET, the dialog box is similar, except that the Input
format and Input boxes are disabled.
2 Under Via Transport, click the request transport mechanism that is accepted by the port
you specified in the Port box. If the port accepts HTTP requests, click HTTP. If the port
accepts HTTPS requests, click HTTPS.
3 The Integration Server’s default directive for invoking services via an HTTP request is
invoke. If you need to specify another directive for Web service consumers to use to
invoke the service, type the directive in the Directive box.
4 By default, the Path box provides the path to the Web service as it currently exists in
the Navigation Panel. If the Web service will reside in a different folder at production
time, type the path to that folder in the Path box. Use the format
folder.subfolder.subfolder/service.
5 If you selected HTTP-GET as the protocol for Web service consumers to use to
communicate with the Web service, skip to “To describe the output signature for the
Web service” on page 57. If you selected HTTP-POST, continue with “To specify the
input format of the Web service (HTTP-POST protocol only)” on page 55.
Stage 3 To specify the input format of the Web service (HTTP-POST protocol only)
If you selected HTTP-POST as the protocol for Web service consumers to use to
communicate with the Web service, you must specify the input format in which the
Web service requires input. You can specify the input format in one of the following
ways:
If the Web service expects input in the form of... Take this action...
Name=value pairs in the POST that Click URL encoded in the Input format
invokes the Web service list, then skip to “To describe the
output signature for the Web service”
on page 57. The WSDL generator
uses the input signature on the
Input/Output tab of the Web service to
create the input message for the
WSDL document.
An XML document, and you want to Go to “To describe the input
describe the input signature for the WSDL signature using an IS document
document using an IS document type type” on page 56.
An XML document, and you want to Go to “To describe the input
describe the input signature for the WSDL signature using an XML Schema” on
document using an element declaration page 56.
from an XML Schema
1 In the Input format list on the Generate WSDL dialog box, click text/xml.
2 Next to the Input box, click . Developer opens the Select Input/Output Constraint dialog
box.
2 Next to the Input field, click . Developer opens the Select Input/Output Constraint
dialog box.
3 Under Choose Constraint Type, click Schema Component.
4 In the text field, after http://, type the Web location and name of the XML Schema that
contains the element declaration you want to use to describe the input signature.
Important! The XML Schema you identify must be located on the Web and must be
accessible to consumers of the WSDL.
5 Click Load. Expand the ELEMENTS headings to view the global element declarations
in the XML Schema.
Note: If an XML Schema definition does not contain an element declaration, Developer
does not display the ELMENTS heading.
6 Select the global element declaration that you want to use to represent the input
signature.
7 Click OK. Developer closes the dialog box and displays the name of the selected
element in the Input box on the Generate WSDL dialog box.
Describe the XML document the Web service produces as output. Complete the Output
format box using the instructions in “To specify the input format of the Web service (HTTP-
POST protocol only)” on page 55.
1 In the Target Namespace box, specify the target namespace for the WSDL document.
By default, the Target Namespace box displays http://host/ as the target namespace,
where host is the name of the server you are currently logged on to. If you want to
specify a different namespace, type the URI for that namespace in the box.
2 Click OK. Developer displays a dialog box that prompts you for a location and name
for the generated WSDL document.
1 Under Save in, select the directory in which you want to save the generated WSDL
document.
2 In the File name field, specify a name for the WSDL document. By default, Developer
assigns the document the name serviceName.wsdl.
3 Click Save. The WSDL generator generates the WSDL document. Developer then
displays a message that lists the WSDL document file and the directory in which it
stored the file.
4 Click OK.
Element Description
<definitions> Contains the elements that describe a Web service.
<types> Contains the type definitions that describe the data that is received
and sent by the Web service. The <types> element can reference
entire XML Schemas and can contain simple type definitions,
complex type definitions, and element declarations. The type
definitions and element declarations help define the input and
output parameters for the Web service. WSDL uses XML Schema as
its native type system.
<message> Specifies the data that is received and sent by the Web service. A
<message> element describes a set of input parameters or a set of
output parameters. Each <message> element can contain one or
more <part> elements. A <part> element associates a piece of data
with a name and a type definition or element declaration. The type
definition or element declaration referenced by the <part> element
can be defined, declared, or referenced in the <types> element.
<operation> Specifies the messages that are received and sent by the Web service.
Within the <operation> element, the <input> element identifies the
message whose parts specify the input parameters to the Web
service while the <output> element identifies the message whose
parts specify the output parameters of the Web service. Essentially,
the operation specifies the signature for the Web service. An
<operation> element is declared within a <portType> element.
<portType> Defines a named set of operations. The <portType> element
associates a port type name with a set of operations. A <portType>
element can contain multiple operations.
<binding> Specifies the protocol and message format to use to access the
operations in a port type. Each <binding> element can specify only
one protocol for a port type; however, a WSDL document can define
more than one binding for a single port type. A WSDL document
should include one <binding> element for each protocol that it
supports.
Element Description
<port> Associates a binding with a network address. Together, the binding
and network address specify how to invoke a Web service. Each port
can specify only one network address for a binding; however,
multiple ports can be defined for a single Web service. Port elements
are defined within the <service> element.
<service> Groups ports that can be used to call Web services. A <service>
element can contain many ports.
transport://host:port/soap/directive
For WSDL documents that specify HTTP-POST or HTTP-GET as the protocol, the
location attribute in the <address> element is used with the location attribute in the
<operation> element to specify the URL used to call the service. For WSDL documents
that specify HTTP-POST and HTTP-GET as the protocol, the location attribute in the
<address> element has this format, where directive is almost always invoke:
transport://host:port/directive
The location attribute in the <operation> element specifies the fully qualified path
name of the service on the webMethods Integration Server and has this format:
folder.subfolder/service
<xsd:complexType name="__AuthenticateUserInput">
<xsd:sequence>
<xsd:element name="userName" nillable="true" type="xsd:string"/>
<xsd:element name="password" nillable="true" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="__AuthenticateUserOutput">
<xsd:sequence>
<xsd:element name="isValid" nillable="true" type="xsd:boolean"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="AuthenticateUserOutput">
<wsdl:part name="isValid" type="xsd:boolean"/>
</wsdl:message>
</wsdl:definitions>
Message Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Message Display
When you generate a WSDL document or create a Web service connector from a WSDL
document, Developer displays a message that indicates whether the process completed
successfully.
If the process completed successfully but warnings occurred, Developer displays a
message to that effect. If the process did not complete successfully, Developer displays a
message that says errors occurred.
When you click Details on the message dialog box, Developer provides information similar
to the information in the message dialog box shown below.
Message code.
WSDL elements
that caused the
error or warning.
Note: When generating a Web service connector, Developer might generate some of the
flow steps in the Web service connector or some of the supporting IS elements (IS
document types, folders, or IS schemas) before it encounters errors or warnings. The
generated elements appear in the Navigation Panel.
[ISC.0082.9106] Warning: Complex type {0} is recursive. webMethods Integration Server does not
support creating a document type from an XSD with a recursive complex type.
The IS document type selected to describe the input or output signature contains a
recursive document type reference (for example, the IS document type contains a
document reference to itself). Because recursive document type references correspond to
recursive complex type definitions in XML Schema, the WSDL generator can successfully
create the WSDL file. However, the Integration Server does not support creating IS
document types from XML Schemas with recursive complex type definitions.
Consequently, the Integration Server will not be able to create a Web service connector
from the generated WSDL document.
[ISC.0124.9001] Document to XSD warning: For interoperability reasons, the <any> type is not used in
SOAP RPC WSDL. Document {0} will be defined as closed in the XSD.
The IS document type you are using to generate a WSDL document contains variables of
type Document or Document list. These variables are open (that is, their Allow unspecified
fields property is set to true).
To resolve this warning, clear the Allow unspecified fields check box on the Constraints tab of
the Variable Properties dialog box. Then, regenerate the WSDL document.
[ISC.0124.9002] Document to XSD error: Document {0} cannot be represented in XML Schema. This
document contains a *body field constrained by a simple type and fields that would be represented as
elements in the XSD. XSD could describe this document if the simple type constraint was removed or
the non-attribute fields were deleted.
The IS document type you are using to generate a WSDL document contains a variable
named *body that is constrained by a simple type. The IS document type also contains
fields that are mapped as elements (not attributes) in the XSD. This combination cannot be
mapped in an XSD.
In a mixed content environment, the Integration Server can only map complex type
definitions of simple content (that is, an IS document type containing attributes and a
*body variable with or without a simple type constraint) or complex type definitions of
complex content (that is, an IS document type containing attributes and/or elements and a
*body variable that is not constrained).
[ISC.0124.9003] Document to XSD error: Referenced document type {0} does not exist.
The IS document type you are using to generate a WSDL document contains a reference to
a nonexistent document type.
To resolve this error, restore the nonexistent document type or remove the reference to it.
[ISC.0124.9004] Document to XSD error: Field {0} is a String table. String tables cannot be represented
in XML Schema.
The IS document type you are using to generate a WSDL document contains String table
variables. XML Schema does not support multi-dimensional arrays.
To resolve this error, remove the String table variable from the IS document type or select
a different IS document type.
[ISC.0124.9005] Document to XSD error: Field {0} cannot be represented in XML Schema. The field
name contains a prefix but an XML Namespace property is not assigned to the field.
The IS document type you are using to generate a WSDL document contains a top-level
variable whose name includes a prefix (that is, the name is in the format prefix:local name).
This variable is not associated with an XML namespace.
To resolve this error, do one of the following:
Associate the variable with an XML namespace by selecting the variable in Developer,
selecting EditProperties, and then typing the namespace for the variable in the XML
Namespace field on the General tab.
Important! Some protocols require the use of a prefix. Before removing the prefix, check
the service signature’s input and output requirements as documented for each
protocol in this guide.
[ISC.0124.9006] Document to XSD error: Field {0} cannot be represented in XML Schema. The field
name does not conform to the XML NCName definition.
The IS document type you are using to generate a WSDL document contains field names
that do not conform to the XML NCName definition.
To resolve this error, rename the fields to conform to the QName lexical rules specified in
http://www.w3.org/TR/REC-xml-names/#NT-QName and the XML namespace and local
naming conventions specified in http://www.w3.org/TR/REC-xml-names/#NT-NCName.
[ISC.0124.9007] Document to XSD error: Document {0} cannot be represented in XML Schema. The
document contains multiple *body fields.
The IS document type or XML Schema element declaration you are using to generate a
WSDL document contains more than one field named *body at the same level.
To resolve this error, remove or rename the duplicate *body fields.
[ISC.0124.9008] Document to XSD error: Document {0} cannot be represented in XML Schema. The
document contains multiple attributes of the same name at the same level.
The IS document type or XML Schema element declaration you are using to generate a
WSDL document contains attributes at the same level with the same name.
To resolve this error, remove or rename the duplicate attributes.
[ISC.0124.9009] Document to XSD error: Field {0} cannot be represented in XML Schema. Attributes
cannot have dimension greater than 0.
The IS document type or XML Schema element declaration you are using to generate a
WSDL document contains array or table type attributes. XML Schema does not support
multi-dimensional attributes.
To resolve this error, remove the attribute from the IS document type or redefine its type
to String.
[ISC.0124.9011] Document to XSD error: Simple type {0} does not exist.
The IS document type you are using to generate a WSDL document contains a reference to
a nonexistent simple type that has been applied to a variable as a content type constraint.
To resolve this error, do one of the following:
Restore the nonexistent simple type by generating a schema on the server that defines
the missing type. To do so, you can either create a schema from an XSD or enable or
import a package that contains a schema with the missing type.
Remove the reference to the missing type by selecting No Constraints Specified in the
Content Type field of the Constraints tab on the variable’s Properties dialog box.
[ISS.0092.9032] Error: Input signature cannot be used to generate WSDL using URL Encoded format.
Field {0} cannot be represented in XML Schema. The field name does not conform to the XML NCName
definition.
A top-level IS document type variable or XML Schema element in the input signature
used to generate a WSDL document is named *body or contains the characters *, @, or :.
These characters represent XML Schema components (mixed content, attributes, and XML
namespace prefixes) that are not applicable to URL encoded parameters.
When URL encoded is specified as the input format for the HTTP POST or HTTP GET
protocols, field names used in the input signature must conform to the QName lexical
rules specified in http://www.w3.org/TR/REC-xml-names/#NT-QName and the XML
namespace and local naming conventions specified rules specified in
http://www.w3.org/TR/REC-xml-names/#NT-NCName.
[ISS.0092.9033] Error: Input signature cannot be used to generate WSDL using URL Encoded format.
Fields cannot have XML Namespace values.
The input signature used to generate a WSDL document contains fields that are associated
with an XML namespace. Fields must not be associated with an XML namespace when
you select either of the following:
HTTP GET as the protocol
HTTP POST as the protocol and URL encoded as the input format
[ISS.0092.9039] Error: URL encoding does not support input variables other than strings and string
lists.
The input parameters declared on the Input/Output tab contain a variable that is not a String
or a String list. When URL encoded is specified as the input format for the HTTP POST or
HTTP GET protocols, Integration Server uses the input parameters declared on the
Input/Output tab of the service to construct the input message for the WSDL document. For
the URL encoded input format, the input signature can contain only String and String list
variables. The input signature should not contain document, document list, Objects,
Object lists, or String table variables because these variables cannot be represented in
name=value pairs in the HTTP request.
[ISS.0092.9002] Warning: Document does not contain service element, no ports were generated for
any Web Service Connector.
The WSDL document does not contain a <service> element, and therefore does not
contain any <port> elements. (A <service> element is a collection of <port> elements.)
Developer generates the Web service connector, but the Web service connector will not
specify any flow MAP steps for setting the port information. In the Web service connector,
the BRANCH on '/_port' step contains a child port MAP step for each unique <port>
associated with the <operation>. The BRANCH on '/_port' step will not contain child port
MAP steps. The Web service connector cannot execute successfully without port
information because the port information specifies the network address for invoking the
Web Service.
[ISS.0092.9004] Error: SOAP binding does not contain transport value, binding was not created.
In the WSDL document, the <soap:binding> element contains a transport attribute but
no value is specified for it. The transport value indicates which transport of SOAP the
binding uses. It is required for a SOAP binding and its value must be
http://schemas.xmlsoap.org/soap/http.
Developer generates the Web service connector, but the Web service connector does not
contain a SEQUENCE step that corresponds to this binding. In the Web service connector,
the BRANCH on '/binding' step contains a child SEQUENCE step for each unique
<binding> associated with an <operation>.
[ISS.0092.9005] Error: SOAP binding has an unsupported transport value, binding was not created.
In the WSDL document, the transport attribute in the <soap:binding> element specifies
an unsupported SOAP transport. Developer can generate a binding for a SOAP binding
only if the transport value is http://schemas.xmlsoap.org/soap/http.
webMethods Developer generates the Web service connector, but the Web service
connector does not contain a SEQUENCE step that corresponds to this binding. In the
Web service connector, the BRANCH on '/binding' step contains a child SEQUENCE step
for each unique <binding> associated with an <operation>.
[ISS.0092.9006] Error: SOAP binding does not contain a transport attribute, binding was not created.
In the WSDL document, the <soap:binding> element does not contain a transport
attribute. The transport value indicates which transport of SOAP the binding uses. It is
required for a SOAP binding. The transport attribute value must be
http://schemas.xmlsoap.org/soap/http.
Developer generates the Web service connector, but the Web service connector does not
contain a SEQUENCE step that corresponds to this binding. In the Web service connector,
the BRANCH on '/binding' step contains a child SEQUENCE step for each unique
<binding> associated with an <operation>.
[ISS.0092.9007] Error: SOAP binding has an unrecognized style value, binding was not created.
In the WSDL document, the <soap:binding> element specifies a value other than rpc or
document for the style attribute.
Developer generates the Web service connector, but the Web service connector does not
contain a SEQUENCE step that corresponds to this binding. In the Web service connector,
the BRANCH on '/binding' step contains a child SEQUENCE step for each unique
<binding> associated with an <operation>.
[ISS.0092.9009] Error: HTTP binding does not contain required verb attribute, binding was not created.
In the WSDL document, the <http:binding> element does not contain the verb attribute.
The value of the verb attribute must be GET or POST.
Developer generates the Web service connector, but the Web service connector does not
contain a SEQUENCE step that corresponds to this binding. In the Web service connector,
the BRANCH on '/binding' step contains a child SEQUENCE step for each unique
<binding> associated with an <operation>.
[ISS.0092.9010] Error: HTTP binding has an unsupported verb attribute, binding was not created.
In the WSDL document, the <http:binding> element specifies a verb attribute value
other than GET or POST.
Developer generates the Web service connector, but the Web service connector does not
contain a SEQUENCE step that corresponds to this binding. (In the Web service connector,
the BRANCH on '/binding' step contains a child SEQUENCE step for each unique
<binding> associated with an <operation>.)
[ISS.0092.9011] Error: Mime binding style is unsupported, binding was not created.
The WSDL document specifies a MIME binding style for the entire <binding>.
webMethods Developer only supports the MIME binding style to describe the inputs and
outputs of an HTTP binding. webMethods Developer cannot generate a binding when the
MIME binding style is specified outside of the HTTP binding context.
Developer generates the Web service connector, but the Web service connector does not
contain a SEQUENCE step that corresponds to this binding. (In the Web service connector,
the BRANCH on '/binding' step contains a child SEQUENCE step for each unique
<binding> associated with an <operation>.)
[ISS.0092.9013] Warning: The operation's binding does not have any ports, no ports were generated
for the Web Service Connector.
Developer cannot find a <port> element that corresponds to a particular <binding>
element. A <port> element specifies a network address or endpoint for a binding.
Developer generates the Web service connector, but does not generate any MAP steps for
setting the binding and address information. In a Web service connector, the BRANCH on
'/_port' step contains a child portName MAP step for each <port> associated with the
<operation>. When this warning occurs, the BRANCH on '/_port' step contains no child
portName MAP steps.
[ISS.0092.9014] Warning: The operation does not have any valid ports, no ports were generated for the
Web Service Connector.
The WSDL document does not contain any valid <port> elements for an <operation>.
The WSDL document might not contain any <port> elements or a <port> element might
reference a non-existent <binding> element. (A <binding> element associates a protocol
with an <operation>.)
Developer generates the Web service connector, but does not generate any portName MAP
steps for setting the binding and address information. In a Web service connector, the
BRANCH on '/_port' step contains a child portName MAP step for each <port> associated
with the <operation>. When this warning occurs, the BRANCH on '/_port' step contains
no child portName MAP steps.
[ISS.0092.9015] Warning: Port does not have a valid binding type, port was not generated.
The WSDL document contains a <port> element that does not contain the binding
attribute.
Developer generates the Web service connector, but does not generate a MAP step for this
port. In a Web service connector, the BRANCH on '/_port' step contains a child portName
MAP step for each <port> associated with the <operation>. The portName MAP step sets
the binding and address information for a port.
[ISS.0092.9016] Warning: Port does not have a location value, port was not generated.
Within the <port> element, the <address> element does not specify a value for the
location attribute. The location attribute specifies the network address or endpoint for
the service.
Developer generates a Web service connector, but without the network address,
webMethods Developer cannot generate a MAP step for this port. In a Web service
connector, the BRANCH on '/_port' step contains a child portName MAP step for each
<port> associated with the <operation>. The portName MAP step sets the binding and
address information for a port.
[ISS.0092.9017] Warning: Port does not have required address element, port was not generated.
The selected WSDL document does not contain an <address> element within the
specified <port> element. The <address> element carries an attribute that specifies the
location or network address for of the Web service.
Developer generates a Web service connector, but does not generate a MAP step for this
port. The portName MAP step sets the binding and address information for a port. Without
the <address> element, Developer cannot set the address information and therefore
cannot generate a MAP step.
[ISS.0092.9018] Warning: Port does not have required location attribute, port was not generated.
Within the <port> element, the <address> element does not carry the location attribute.
The location attribute specifies the network address for the service.
Developer generates a Web service connector, but does not generate a MAP step for this
port. The portName MAP step sets the binding and address information for a port. Without
the location attribute, Developer cannot set the address information, and therefore
cannot generate a MAP step.
[ISS.0092.9019] Warning: Port does not have a location value, port was not generated.
Within the <port> element, the <address> element does not specify a value for the
location attribute. The location attribute specifies the network address or endpoint for
the service.
Developer generates a Web service connector, but without the network address,
Developer cannot generate a MAP step for this port. The portName MAP step set the
binding and address information for a port. In a Web service connector, the BRANCH on
'/_port' step contains a child portName MAP step for each <port> associated with the
<operation>.
[ISS.0092.9020] Error: Operation is not referenced by any binding, Web Service Connector was not
created.
The WSDL document does not specify a <binding> element for the <operation>. Each
<operation> within a <portType> element needs to correspond to an <operation>
element within a <binding> element. Without a binding, the WSDL document does not
provide any information about how to invoke the Web service.
Developer does not generate a Web service connector for the <operation>.
[ISS.0092.9021] Error: Input and Output messages missing, invalid operation, Web Service Connector
was not created.
In the WSDL document, the <operation> element within a <portType> element does not
declare an input message or an output message. For Developer to generate a Web service
connector for the <operation>, the <operation> element must contain at least one
<input> element and at least one <output> element.
Developer does not generate a Web service connector for the <operation>.
[ISS.0092.9022] Error: Input message missing, Notification operations not supported. Web Service
Connector was not created.
In the WSDL document, the <operation> element does not declare an input message, but
it does declare an output message. In other words, the <operation> element does not
contain a child <input> element, but does contain a child <output> element. This
structure corresponds to the grammar for a notification operation. Developer does not
generate Web service connectors for notification operations.
[ISS.0092.9023] Error: Output message precedes Input message, Solicit Response operations not
supported. Web Service Connector was not created.
In the WSDL document, the <operation> element declares an <output> element (output
message) before the <input> element (input message). This describes a solicit-response
operation. Developer does not generate Web service connectors for solicit-response
operations.
[ISS.0092.9024] Error: HTTP binding has mime multipart Input. Multipart Input is not supported.
Binding was not generated.
The <binding> element specifies a multi-part MIME binding for the operation.
webMethods Developer does not support this type of binding.
Developer generates the Web service connector, but the Web service connector does not
contain a SEQUENCE step that corresponds to this binding. In the Web service connector,
the BRANCH on '/binding' step contains a child SEQUENCE step for each unique binding
associated with an operation.
[ISS.0092.9026] Error: HTTP Binding input is of an unknown type. Binding was not generated.
The input binding specifies an unknown binding type. When the protocol is HTTP POST,
the <mime:content> element for the input binding must specify text/xml, text/plain,
or application/x-www-form-urlencoded for the type attribute. (The <mime:mimeXml>
element is also valid for the input binding.) When the protocol is HTTP GET, the input
binding must contain the child element <http:urlEncoded>.
Developer generates the Web service connector, but the Web service connector does not
contain a SEQUENCE step that corresponds to this binding. (In the Web service connector,
the BRANCH on '/binding' step contains a child SEQUENCE step for each unique binding
associated with an operation.)
[ISS.0092.9027] Error: HTTP Binding output mime parts are missing. Binding was not generated
completely.
The <binding> element specifies MIME binding for the output message, but the output
binding does not specify a message part for the <mime:content> element or the output
binding is missing <mime:part> elements.
Developer generates the Web service connector and generates a SEQUENCE step that
corresponds to this binding. (In the Web service connector, the BRANCH on '/binding'
step contains a child SEQUENCE step for each unique binding associated with an
operation.) However, Developer does not generate a complete binding because the output
binding in the WSDL document does not provide the part name information that
Developer needs to link the service results to variables in the pipeline. Specifically, the
Web service connector does not contain the BRANCH on '/numParts' step for this binding.
[ISS.0092.9028] Error: HTTP Binding output mime part is missing its type. Binding was not generated
completely.
The <binding> element specifies MIME binding for the output message, but the
<mime:content> element for the output binding does not specify a value for the type
attribute. The type attribute specifies the MIME type.
Developer generates the Web service connector and generates a SEQUENCE step that
corresponds to this binding. (In the Web service connector, the BRANCH on '/binding'
step contains a child SEQUENCE step for each unique binding associated with an
operation.) However, Developer does not generate a complete binding because the output
binding in the WSDL document does not provide the part name information that
Developer needs to link the service results to variables in the pipeline. Specifically, in the
Web service connector, the BRANCH on '/loopCount' step does not have a child
SEQUENCE step for linking the output message part to the pipeline.
[ISS.0092.9029] Warning: Generated Document Type, {IS document type name}, already exists in
namespace.
The IS document type that Developer generated for the input or output message already
exists in the server namespace. Developer will not generate a duplicate IS document type.
[ISS.0092.9030] Error: Input does not have a valid message reference, Web Service Connector was not
created.
Within the <operation> element, the message attribute for the <input> element does not
reference a <message> element within the WSDL. Developer cannot find the message
specified by the message attribute, or the message attribute does not have a value.
Developer does not generate a Web service connector for the <operation>.
[ISS.0092.9031] Error: Output does not have a valid message reference, Web Service Connector was
not created.
Within the <operation> element, the message attribute for the <output> element does
not reference a <message> element within the WSDL. Developer cannot find the message
specified by the message attribute or the message attribute does not have a value.
Developer does not generate a Web service connector for the <operation>.
[ISS.0092.9032] Error: Invalid schema definition for Input signature. Web Service Connector was not
created.
The XML Schema definition that contains element declarations or type definitions for the
<part> elements in the input message is invalid. Alternatively, the XML Schema
definition does not contain the element declarations or type definitions referenced by the
<part> elements. Developer does not generate a Web service connector for the
<operation>.
Note: This error message is usually accompanied by specific IS schema generation errors.
For more information about errors that occur when generating an IS schema from an XML
Schema, see the webMethods Developer User’s Guide.
[ISS.0092.9033] Error: Invalid schema definition for Output signature. Web Service Connector was not
created.
The XML Schema definition that contains element declarations or type definitions for the
<part> elements in the output message is invalid. Alternatively, the XML Schema
definition does not contain the element declarations or type definitions referenced by the
<part> elements. Developer does not generate a Web service connector for the
<operation>.
Note: This error message is usually accompanied by specific IS schema generation errors.
For more information about errors that occur when generating an IS schema from an XML
Schema, see the webMethods Developer User’s Guide.
[ISS.0092.9034] Warning: Found port with an invalid binding reference, the port was not generated.
In the WSDL document, a <port> element contains a binding attribute that references a
<binding> that does not exist within the WSDL document. Developer cannot find the
<binding> element specified by the binding attribute.
Developer generates the Web service connector, but does not generate a MAP step for this
port. The portName MAP steps set the binding and address information for a port. In a
Web service connector, the BRANCH on '/_port' step contains a child portName MAP step
for each <port> associated with the <operation>.
[ISS.0092.9036] Error: Could not process document. Found binding with an invalid PortType
reference, no Web Service Connectors were created.
In a <binding> element, the type attribute specifies a <portType> that does not exist in
the WSDL document. Developer does not generate a Web service connector.
[ISS.0092.9037] Error: HTTP Binding input type could not be found. Binding was not generated.
Developer cannot determine the input MIME type for the HTTP binding.
Developer generates the Web service connector, but the Web service connector does not
contain a SEQUENCE step that corresponds to this binding. (In the Web service
connector, the BRANCH on '/binding' step contains a child SEQUENCE step for each
unique binding associated with an operation.)
[ISS.0092.9038] Error: Unknown binding style was found, binding was not created.
The <binding> element specifies a protocol other than SOAP, HTTP, or MIME.
Developer generates the Web service connector, but the Web service connector does not
contain a SEQUENCE step that corresponds to this binding. (In the Web service connector,
the BRANCH on '/binding' step contains a child SEQUENCE step for each unique binding
associated with an operation.)
[ISS.0092.9040] Error: PortType name is zero length, Web Service Connector was not created.
In the WSDL document, the <portType> element carries the name attribute, but the name
attribute does not have a value. Developer does not generate a Web service connector.
[ISS.0092.9041] Error: Operation name is zero length, Web Service Connector was not created.
In the WSDL document, the <operation> element carries the name attribute, but the
name attribute does not have a value. Developer does not generate a Web service
connector.
Index
A G
API Generate WSDL command 26
related documentation 8 generating WSDL documents
describing service signature 35
B HTTP GET protocol 46
binding element, in WSDL document 60 HTTP POST protocol 46
process overview 14
SOAP Message protocol 34
C
SOAP RPC protocol 26
conventions used in this document
program code conventions 7
H
typographical conventions 6
creating HTTP GET protocol
Web service connectors 20 input and output signature requirements 47
WSDL documents service requirements for generating WSDL documents 46
describing service signature 35 specifying for WSDL documents 46
HTTP GET protocol 46 text/xml restrictions 47
HTTP POST protocol 46 URL encoded restrictions 46, 50
process overview 14 HTTP POST protocol
SOAP Message protocol 34 input and output signature requirements 47
SOAP RPC protocol 26 service requirements for generating WSDL documents 46
specifying for WSDL documents 46
text/xml restrictions 47
D
URL encoded restrictions 46, 50
default SOAP processor, using as directive for WSDL document
26, 34
definitions element, in WSDL document 60
I
docType folder, for Web service connector 21 input signature
documentation describing for WSDL documents 27, 35, 47
printing 9 HTTP GET requirements 47
program code conventions used 7 HTTP POST requirements 47
related manuals 8 SOAP Message requirements 35
typographical conventions used 6 SOAP RPC requirements 27
viewing 9
L
E local name, definition of 16
elements, in a WSDL document 60
errors M
Web service connector generation 71 message element, in WSDL document 60
WSDL document generation 67 messages related to Web services 66