Software AG Products 10.7 | Integrating On-Premises and Cloud Applications | Service Development | Working with Web Services | Working with Operations | Adding Operations | Using a 6.5 SOAP-MSG Style Service as an Operation
 
Using a 6.5 SOAP-MSG Style Service as an Operation
In webMethods Integration Server version 6.5, you could expose an IS service as a SOAP-MSG web service. The 6.5 SOAP-MSG style services used the default SOAP processor, specified SOAP version 1.1, and specified a style/use of Document/Literal. You can migrate 6.5 SOAP-MSG style services to the web service descriptor framework introduced in Integration Server 7.1 by adding the service as an operation to a provider WSD. By migrating the service, you can leverage the inherent functionality of a provider WSD, such as headers, handlers, faults, and WS-Security.
By default, Integration Server derives the input and output signatures for operations from the services used to create the operation. Integration Server 6.5 required that an IS service in the SOAP-MSG style use a signature that took a soapRequestData object and a soapResponseData object as input and produced a soapResponseData object as output. This signature requirement does not result in meaningful signature information for the operation in WSDL documents generated for the provider WSD. To produce a meaningful, descriptive signature for an operation that corresponds to a 6.5 SOAP-MSG style service, you must select an IS document type or an XML schema element declaration to represent the service input and output signature.
Keep the following points in mind when adding a 6.5 SOAP-MSG style service as an operation to a provider WSD:
*You can add the 6.5 IS service to an existing provider WSD or create a new provider WSD for the IS service. For information about adding an IS service as an operation to a provider WSD, see Adding an IS Service as an Operation. For information about creating a service first provider WSD, see Creating a Service First Provider Web Service Descriptor.
*The provider WSD must have a single binder with the following properties:
*SOAP version = SOAP 1.1 protocol
*SOAP binding style = document
*SOAP binding use = literal
*To produce a meaningful signature for the operation in a WSDL document, you must select an IS document type or an XML schema element declaration to represent the input and output signatures. For information about changing the input or output signature for an operation, a provider WSD, see Modifying the Signature of a 6.5 SOAP-MSG Style Operation.
*If you use an IS document type for the input and/or output signature, the IS document type must satisfy the service signature requirements for the SOAP-MSG style as specified in the Web Services Developer’s Guide version 6.5.
*If you add any headers to the operation, any existing clients for the 6.5 service must be modified to include the header in the SOAP request.
*Any header handler processing that changes the SOAP message and occurs before service invocation affects the SOAP message passed to the service. Note that 6.5 SOAP-MSG style services expect the SOAP message to be in a certain format. Specifically, any changes to the SOAP body might affect the ability of the 6.5 SOAP-MSG style service to process the request.
*When a 6.5 SOAP-MSG style service is added as an operation, you can add fault processing to the operation response. For fault processing to work, you need to modify the 6.5 SOAP-MSG style service to detect a Fault condition, add Fault output data to the pipeline, and drop the SOAP response message (soapResponseData object) from the pipeline.