Creating a Service First Provider Web Service Descriptor
Keep the following points in mind when creating a service first provider WSD:
You must have Write access to the folder in which you want to store the provider WSD.
Depending on the use and style that you specify, you may have to either rename certain fields in the IS service or assign an XML namespace to them.
You must have at least one web service endpoint alias that specifies the JMS transport before you can create a provider web service descriptor with a JMS binder. For more information about creating a web service endpoint alias, see
webMethods Integration Server Administrator’s Guide.
When using an adapter service to create a provider web service descriptor, if the service returns values in the pipeline that do not match the output signature, you must change those variable properties to optional fields (where applicable), or else wrap the service in a flow to add or drop variables to match the output signature.
Web service descriptors that are not running in compatibility mode can stream MTOM attachments for both inbound and outbound SOAP messages. To stream MTOM attachments, the object that represents the field to be streamed should be of type com.wm.util.XOPObject Java class.
You can quickly create a service first provider WSD by right-clicking the service, selecting
Generate Provider WSD. Enter a name for the WSD in the Provide a Name dialog box and click
OK.
Designer automatically creates a provider WSD in the same folder as the selected IS service, using all the default options.
To create a service first provider web service descriptor
1. In the Package Navigator view of Designer, click File > New > Web Service Descriptor.
2. In the New Web Service Descriptor dialog box, select the folder in which you want to save the provider WSD. Click Next.
3. In the Element Name field, specify a name for the provider web service descriptor using any combination of letters, numbers, and/or the underscore character. Click Next.
For information about restricted characters, see
About Element Names.
4. Under Create web service descriptor as, select Provider (Inbound Request).
5. Under Web service source, select Existing IS service(s).
6. Click Next.
7. Select one or more services to include as operations in the provider web service descriptor. Click Next.
8. Provide the following information:
In this field... | Specify... |
SOAP version | Whether SOAP messages for this web service should use SOAP 1.1 or SOAP 1.2 message format. |
Transport | The transport protocol used to access the web service. Select one of the following: HTTP HTTPS JMS |
Use and style for operations | The style/use for operations in the provider WSD. Select one of the following: Document - Literal RPC - Literal RPC - Encoded |
Endpoint | The address at which the web service can be invoked. Do one of the following: To use a provider web service endpoint alias to specify the address, select the Alias option. Then, in the Alias list, select the provider web service endpoint alias. To specify a host and port as the address, select the Host option. Then, in the Host field specify the host name for the Integration Server on which the web service resides. In the Port field, specify an active HTTP or HTTPS listener port defined on the Integration Server specified in the Host field. Note: | If you selected JMS as the transport, you must specify an alias. After you select a provider web service endpoint alias, Designer displays the initial portion of the JMS URI that will be used as the address in the Port address (prefix) field. |
|
Directive | The SOAP processor used to process the SOAP messages received by the operation in the provider WSD. The Directive list displays all of the SOAP processors registered on the Integration Server. The default processor is ws - Web Services SOAP Processor. |
Target namespace | The URL that you want to use as the target namespace for the provider WSD. In a WSDL document generated for this provider WSD, the elements, attributes, and type definitions will belong to this namespace. |
Note: | If you specify a transport, but do not specify a host, port, or endpoint alias, Integration Server uses the primary port as the port in the endpoint URL. If the selected transport and the protocol of the primary port do not match, web service clients will not execute successfully. For more information see Protocol Mismatch Between Transport
and Primary Port. |
9. Under Enforce WS-I Basic Profile 1.1 compliance do one of the following:
Select
Yes if you want
Designer to validate all the web service descriptor objects and properties against the WS-I requirements before creating the web service descriptor.
Select
No if you do not want
Designer to enforce compliance for WS-I Basic Profile 1.1.
Note: | WS-I compliance cannot be enforced if the WSDL contains a SOAP over JMS binding. |
10. If you want Integration Server to use the Xerces Java parser to validate the schema elements that represent the signatures of the services used as operations, select the Validate schema using Xerces check box.
11. Click Finish.
If Designer cannot create or cannot completely generate a web service descriptor, Designer displays error messages or warning messages.
Notes:
If you selected the
Validate schema using Xerces check box, when creating a service first provider web service descriptor,
Integration Server converts the signatures of the services used as operations to XML schema elements. Then
Integration Server uses the Xerces Java parser to validate the schema elements. If the schema element does not conform syntactically to the schema for XML Schemas defined in
XML Schema Part 1: Structures (which is located at
http://www.w3.org/TR/xmlschema-1),
Integration Server does not create the web service descriptor. Instead,
Designer displays an error message that lists the number, title, location, and description of the validation errors.
Set up a package dependency if an IS service uses a document type from a different package as the input or output signature.
The Message Exchange Pattern (MEP) that
Integration Server uses for the operation it creates from the service can be In-Out MEP or In-Only MEP.
Integration Server always uses In-Out MEP when the web service descriptor’s
Pre-8.2 compatibility mode property is
true. When this property is
false,
Integration Server uses:
In-Out MEP when the service signature contains both input and output parameters.
In-Only MEP when the service signature contains no output parameters.
Note: | If you want to use Robust In-Only MEP rather than In-Only MEP, after creating the web service descriptor for a service with no output parameters, add a fault to the operation. |
For more information about Integration Server MEP support, see the Web Services Developer’s Guide.
Related Topics