Decompression with the Web Services Provide Service Activity

The Web Services Provide Service activity supports decompression with the gzip format only.

Note: The Provide Service activity does not support the deflate format or the common UNIX file compression format called compress.

The Provide Service activity only supports receiving HTTP requests using HTTP/HTTPS 1.0 protocol.

The decompression run time behavior of the Provide Service activity when receiving an HTTP request is dependent on the following conditions:

These conditions affect the decompression run time behavior of the Provide Service activity and are described below and in the table provided in the Run time Decompression Behavior section.

Content-Encoding Value at the Message Level

The value of the Content-Encoding header of the HTTP request can determine if the Integration Appliance decompresses the body of the HTTP request that is received from the client as shown in Figure 1.
Figure 1. HTTP request

The value of the Content-Encoding header is represented by the third column labeled Content-Encoding Value in the table provided in the Run time Decompression Behavior section.

Setting Decompression at the Activity Level

By default, decompression is turned on at the activity level for the Provide Service activity. You can turn off decompression at the activity level by clearing the Use Compression/Decompression check box. The Use Compression/Decompression check box is available in the Configure task of the activity. The second column labeled Use Compression/Decompression check box in the table provided in the Run time Decompression Behavior section, represents the setting of the Use Compression/Decompression check box.

Run time Decompression Behavior

The following table describes the decompression run time behavior when the Integration Appliance receives an HTTP request from the HTTP Client:
Use Compression/ Decompression Check Box (Activity Level) Content-Encoding Value (Message Level) Integration Appliance Decompression Run Time Behavior
selected gzip The Integration Appliance decompresses the body of the request using the gzip format. The value of Content-Encoding is set to gzip in the headers output parameter returned from the activity.
selected not set The Integration Appliance sends the body of the  request as is (unchanged). The value of Content-Encoding is not set in the headers output parameter returned from the activity.   
selected identify The Integration Appliance sends the body of the  request as is (unchanged). The value of Content-Encoding is not set in the headers output parameter returned from the activity.   
selected any other string besides gzip or identity The Integration Appliance sends the 415 (Unsupported Media Type) Response Code.
cleared value is not significant The Integration Appliance does not decompress the body of the request and the current value of Content-Encoding in the request is passed as is to the headers output parameter of the activity. For example, if the value of the Content-Encoding is set to gzip but the Use Compression/Decompression check box is cleared, the Integration Appliance does not decompress the body of the request but Content-Encoding is set to gzip in the headers output parameter of the activity.

Compression Behavior When Sending a Request

The following table describes the compression run time behavior when the Integration Appliance sends an HTTP request to the Web Service.

Accept-Encoding Header Value Passed to the Request

The following table describes the value of the Accept-Encoding header passed in the HTTP request.
Use Compression/ Decompression Check Box (Activity Level) Initial Accept-Encoding Value Endpoint Supports Compression? Accept-Encoding Value Passed in the HTTP Request to the Web Service
selected gzip,deflate yes The Accept-Encoding header is set to gzip,deflate in the request.
value is not significant value is not significant no The current value of the Accept-Encoding header is passed as is in the request.
cleared value is not significant value is not significant The current value of the Accept-Encoding header is passed as is in the request.

Decompression Behavior When Receiving a Response

The following table describes the decompression run time behavior when the Integration Appliance receives the HTTP response from the Web Service.
Use Compression/ Decompression Check Box (Activity Level) Content-Encoding Value in the HTTP Response (Message Level) Endpoint Supports Compression? Integration Appliance Decompression Run Time Behavior When Receiving a Response
selected gzip yes The Integration Appliance decompresses the body of the response using the gzip format.
selected deflate yes The Integration Appliance decompresses the body of the response using the deflate format.
selected identity yes The Integration Appliance does not decompress the body of the response.
selected value not listed in the Accept-Encoding header yes The Integration Appliance logs an error that the response data was received in an unsolicited content encoding type.
selected value is not significant no The Integration Appliance does not decompress the body of the response. The current value of the Content-Encoding header is passed as is in the response.
cleared value is not significant value is not significant The Integration Appliance does not decompress the body of the response.  The current value of the Content-Encoding header is passed as is in the response.