Software AG Products 10.7 | Integrating On-Premises and Cloud Applications | Service Development | Submitting and Receiving XML Documents | Submitting and Receiving XML via HTTP | Submitting and Receiving XML via $xmldata without Parsing | Using pub.client:http to Submit $xmldata via HTTP
 
Using pub.client:http to Submit $xmldata via HTTP
If the client is a service running in an Integration Server, the client can invoke the pub.client:http service to submit an XML document in $xmldata via HTTP.
The following table describes how to set the input variables for the pub.client:http service use $xmldata to submit an XML document and to include the xmlFormat argument in the URL to override the watt.server.http.xmlFormat setting. For a full description of the pub.client:http service, see webMethods Integration Server Built-In Services Reference.
pub.client:http input variable
Description
url
Specify the URL of the target service that is to receive the XML document.
Note:
Rather than specifying the query string portion of the URL with the xmlFormat argument in the url variable, specify the xmlFormat argument in the data/args variable, as described below.
method
Specify post.
data
Use the args key of the data input variable to specify key/value pairs that the service places in the query string of the URL.
Key
Value
args
A Document containing the arguments you want the service to add to the URL in the query string. Specify the following arguments:
Argument
Value
$xmldata
A String that contains the XML document that the client wants to submit via HTTP.
Note:
Using $xmldata for the XML document indicates the data is XML. As a result, you do not need to use the headers input variable to specify the Content-Type field of the HTTP request header.
xmlFormat
A String that indicates how you want Integration Server to pass the XML document to the target service. Specify stream or bytes.
*Use stream if you want Integration Server to pass the XML document as an XML stream without parsing the XML.
When passing the XML document as an XML stream, Integration Server places the XML in the input pipeline of the target service as an InputStream named xmlStream.
*Use bytes if you want Integration Server to pass the XML document as a byte array without parsing the XML.
When passing the XML document as a byte array, Integration Server places the XML in the input pipeline of the target service as a byte array named xmlBytes.
The query string that the service appends to the URL will use the following format:
?$xmldata=string&xmlFormat=format
where:
*string is the value you specify for the $xmldata argument (that is, the XML document).
*format is the value you specify for the xmlFormat argument.
For information about how to set other input variables when using the pub.client:http service to submit an XML document, see Submitting and Receiving XML via HTTP.