IBM BPM, V8.0.1, All platforms > Get started with IBM BPM > Key concepts > Bindings > Binding types > HTTP bindings

HTTP headers

HTTP import and export bindings allow configuration of HTTP headers and their values to be used for outbound messages. The HTTP import uses these headers for requests, and the HTTP export uses them for responses.

Statically configured headers and control information take precedence over values dynamically set at run time. However, the dynamic override URL, Version, and Method control values override the static values, which are otherwise considered defaults.

The binding supports the dynamic nature of the HTTP import URL by determining the value of HTTP target URL, Version, and Method at run time. These values are determined by extracting the value of Endpoint Reference, Dynamic Override URL, Version, and Method.

See Related Concepts for information about dynamic invocation and for specific information about the URL format, syntax, and usage.

The control and header information for outbound messages under HTTP export and import bindings is processed in the following order:

  1. Header and control information excluding HTTP dynamic override URL, Version, and Method from the SCA Message (lowest priority)
  2. Changes from the administrative console on the export/import level
  3. Changes from the administrative console on the method level of the export or import
  4. Target address specified by way of the Endpoint Reference or the SMO header
  5. Dynamic Override URL, Version, and Method from the SCA message
  6. Headers and control information from the data handler or data binding (highest priority)

The HTTP export and import will populate inbound direction headers and control parameters with data from the incoming message (HTTPExportRequest and HTTPImportResponse) only if protocol header propagation is set to True. Inversely, the HTTP export and import will read and process outbound headers and control parameters (HTTPExportResponse and HTTPImportRequest) only if protocol header propagation is set to True.

Data handler or data binding changes to headers or control parameters in the import response or export request will not alter the processing instructions of the message inside the import or export binding and should be used only to propagate modified values to downstream SCA components.

The context service is responsible for propagating the context (including the protocol headers, such as the HTTP header, and the user context, such as account ID) along an SCA invocation path. During development in IBM Integration Designer, you can control the propagation of context by way of import and export properties. For more details, see the import and export bindings information in the IBM Integration Designer information center.


Supplied HTTP header structures and support

Dynamic Override URL If set in the data handler or data binding, overrides the HTTP Import URL. Written to the message in the request line.

Query string is also part of the URL control parameter. Not set Not set Ignored Dynamic Override Version If set, overrides the HTTP Import Version. Written to the message in the request line. Not set Not set Ignored Dynamic Override Method If set, overrides the HTTP Import Method. Written to the message in the request line. Not set Not set Ignored Media Type (This control parameter carries part of the value of the Content-Type HTTP header.) If present, written to the message as part of the Content-Type header.

This control element value should be provided by the data handler or data binding. Read from the response message, Content-Type header Read from the request message, Content-Type header If present, written to the message as part of Content-Type header.

This control element value should be provided by the data handler or data binding. Character set (default: UTF-8) If present, written to the message as part of the Content-Type header.

This control element value should be provided by the data binding. Read from the response message, Content-Type header Read from the request message, Content-Type header Supported; written to the message as part of the Content-Type header.

This control element value should be provided by the data binding. Transfer Encoding (Possible values: chunked, identity; default is identity) If present, written to the message as a header and controls how the message transformation is encoded. Read from the response message Read from the request message If present, written to the message as a header and controls how the message transformation is encoded. Content Encoding (Possible values: gzip, x-gzip, deflate, identity; default is identity) If present, written to the message as a header and controls how the payload is encoded. Read from the response message Read from the request message If present, written to the message as a header and controls how the payload is encoded. Content-Length Ignored Read from the response message Read from the request message Ignored StatusCode (default: 200) Not supported Read from the response message Not supported If present, written to the message in the response line ReasonPhrase (default: OK) Not supported Read from the response message Not supported Control value ignored. The message response line value is generated from the StatusCode. Authentication (contains multiple properties) If present, used to construct the Basic Authentication header.

The value for this header will be encoded only on the HTTP protocol. In the SCA, it will be decoded and passed as clear text. Not applicable Read from the request message Basic Authentication header. The presence of this header does not indicate the user has been authenticated. Authentication should be controlled in the servlet configuration.

The value for this header will be encoded only on the HTTP protocol. In the SCA, it will be decoded and passed as clear text. Not applicable Proxy (contains multiple properties: Host, Port, Authentication) If present, used to establish connection through proxy. Not applicable Not applicable Not applicable SSL (contains multiple properties: Keystore, Keystore Password, Trustore, Trustore Password, ClientAuth) If populated and the destination url is HTTPS, it is used to establish a connection through SSL. Not applicable Not applicable Not applicable

HTTP bindings


Related information:
Dynamic invocation