Software AG Products 10.7 | Integrating On-Premises and Cloud Applications | Integration Server Built-In Services | SOAP Folder | Summary of Elements in this Folder | pub.soap.handler:addBodyBlock
 
pub.soap.handler:addBodyBlock
WmPublic. Inserts a document into a SOAP message as a new body block.
Input Parameters
messageContext
Object Message context containing the SOAP message to which to add a body block.
A message context contains properties for the SOAP message and provides access to the SOAP message. Integration Server creates the message context and passes it to the handler. All handlers invoked by a given instance of a SOAP request or SOAP response use the same message context, which enables you to use the message context to pass information among handlers.
documentType
String Optional. Fully qualified name of the IS document type that specifies the structure of the document that you want to add as a new body block; that is, that specifies the structure of inputBodyBlock/bodyDocument. If specified, inputBodyBlock/bodyDocument must be an instance of this document type.
Specify a document type that Integration Server created while creating the consumer or the WSDL first provider web service descriptor or one that was created using the pub.soap.handler:generateDocumentTypesFromWSDL service.
If you do not specify a document type, the service performs a literal conversion of inputBodyBlock/bodyDocument into the SOAP body; that is, the conversion will not consider style or use.
inputBodyBlock
Document Contents of the body block.
Key
Description
operationQName
Document Optional. Qualified name for the web service wrapper that the addBodyBlock service will use to wrap the XML payload that it generates by converting bodyDocument into XML.
The operationQName document references the pub.soap.utils:QName document type.
Note:
The operationQName is only relevant for RPC/Encoded and RPC/Literal services; this service ignores operationQName for Document/Literal services.
Key
Description
namespaceName
String Namespace name for the web service operation.
localName
String Name of the web service operation on which the handler is being written.
bodyDocument
Document SOAP body block that you want to add to the SOAP message. Integration Server converts the document to an XML node and inserts it as a body block.

wrapPayloadWith OperationQName FromContext
String Optional. Flag that indicates whether the service should obtain the qualified name for the web service wrapper from the message context or from operationQName. Set to:
*true to have the service obtain the qualified name for the web service wrapper from messageContext. If the operationQName parameters are specified, the service ignores them.
*false to have the service use the values you specify in the operationQName parameters. This is the default.
Note:
For RPC/Encoded and RPC/Literal services, be sure to set wrapPayloadWithOperationQNameFromContext to true if you do not specify operationQName. This service ignores wrapPayloadWithOperationQNameFromContext for Document/Literal services.
validate
String Optional. Flag that indicates whether you want the service to validate inputBodyBlock/bodyDocument against the IS document type specified in the documentType input parameter. If you do not use documentType to specify an IS document type, the validation will fail.
Set validate to:
*true to validate inputBodyBlock/bodyDocument. If the validation fails, an exception is thrown.
*false to skip validating inputBodyBlock/bodyDocument. This is the default.
Output Parameters
status
String Flag indicating the outcome of the service. A value of:
*true indicates that adding the body block was successful.
*false indicates that adding the body block failed.
Note:
If the SOAP message already contains a body block, the service sets status to false.
Usage Notes
If the SOAP message already contains a body block, first use the pub.soap.handler:removeBodyBlock service to remove the existing body block before using this service to add a new one.
See Also
pub.soap.handler:getBodyBlock
pub.soap.handler:removeBodyBlock