The connector processes top-level business objects (TLOs), which are used for request processing and event processing. TLOs contain a request business object and, optionally, response and fault business objects. These child objects contain content data and, optionally, Protocol Config MOs. They are also data-handler specific objects; for example, if you are using the XML data handler, the request child would be a business object that is comprehensible to the XML data handler. The TLO, request, response, and fault objects as well as application-specific information, attributes, and requirements with regard to request versus event processing are described and illustrated in the sections below.
For event processing the connector allows two kinds of TLOs--synchronous and asynchronous. This section discusses synchronous event processing TLOs.
Figure 4 shows the business object hierarchy for synchronous event processing. Request and response objects are required, fault objects are optional.
The TLO contains object-level ASI as well as attributes with attribute-level ASI. Both kinds of ASI are discussed below.
Object-level ASI provides fundamental information about the nature of a TLO and the objects it contains. Figure 5 shows the object-level ASI for SERVICE_SYNCH_OrderStatus, a sample TLO for synchronous event processing.
Table 4 below describes the object-level ASI for a synchronous event processing TLO.
Object-level ASI | Description |
---|---|
ws_eventtlo=true |
If this ASI property is set to true, the connector treats this object as a TLO enabled for event processing. |
ws_collab=collabname |
This ASI tells the connector which collaboration to invoke. Its value is the name of the collaboration. In the sample shown inFigure 5, the collaboration name is SERVICE_SYNCH_OrderStatus_Collab) |
ws_verb=verb |
Before delivering the TLO to the collaboration, the connector uses this ASI to set the verb on the TLO. In the sample shown inFigure 5, the verb is Retrieve. |
ws_mode=synch |
During event notification, the connector uses this ASI property to determine whether to invoke the collaboration synchronously (synch) or asynchronously (asynch). For synchronous processing, this ASI must be set to synch. The default is asynch. |
Each synchronous event processing TLO has attributes and attribute-level ASI. Figure 6 shows the attributes of SERVICE_SYNCH_OrderStatus, a sample TLO. It also shows the attribute-level ASI in the App Spec Info column.
Table 5 summarizes the attribute-level ASI for the request, response, fault, MimeType, and Charset attributes of an synchronous event processing TLO.
TLO attribute | Attribute-level ASI | Description |
---|---|---|
MimeType | Optional attribute; if specified, its value is used as the mime type of the data handler to invoke for the synchronous response. | |
Charset | This optional parameter of type String specifies the charset to be set on the data handler when transforming an outgoing business object to the message. NOTE: the charset value specified in this attribute will not be propagated in the Content-Type protocol header of the response message. | |
Request |
ws_botype=request |
This attribute corresponds to an HTTP service request. The connector uses its ASI to determine whether this TLO attribute is of type request BO. This ASI, not the attribute name, determines the attribute type. If there is more than one request attribute, the connector uses the ASI of the first one. This attribute is required for synchronous event processing TLOs. |
Response |
ws_botype=response |
This attribute corresponds to the response returned by an HTTP service. The connector uses this ASI to determine whether this TLO attribute is of type response BO. This ASI, not the attribute name, determines the attribute type. If there is more than one response attribute, the connector uses the ASI of the first one. This attribute is required for synchronous event processing TLOs. |
Fault | ws_botype=fault
ws_botype=defaultfault |
This attribute, optional for synchronous event processing, corresponds to a fault message returned by a collaboration when it cannot successfully populate a response. The connector uses this ASI, not the attribute name, to determine if the attribute is of type Fault BO. |
A request business object is a child of a TLO and is required for synchronous event processing. A request business object has object-level ASI. The object-level ASI for a request business object for synchronous event processing is described in Table 6. You can specify a default verb for the request business object. You do so by specifying:
DefaultVerb=true;
in the ASI field for the verb in the Supported Verbs list at the top-level of the request business object. If DefaultVerb ASI is not specified and the data handler processes a business object with no verb set, the business object is returned without a verb.
Object-level ASI | Description |
---|---|
cw_mo_http=HTTPCfgMO | The value of this ASI must match the name of the attribute that corresponds to the Protocol Config MO. The ASI designates the HTTP or HTTPS protocol listener. Both the ASI and the Protocol Config MO are optional. For further information, see Protocol Config MO. Note: The data handler that you configure for business object transformations should be capable of reading any ASI that begins with cw_mo as metadata and not as part of the busisenss data to be converted. The XML data handler has the capability to detect cw_mo metadata, ignoring the attributes that such values point to. |
ws_tloname=tloname | This ASI specifies the name of the TLO that this object belongs to. During event processing, the connector uses this ASI to determine whether the request business object delivered by the data handler is a child of the TLO. If so, the connector creates the specified TLO, sets the request business object as its child, and uses the TLOs object-level ASI to deliver it to the subscribing collaboration. |
A response business object is a child of a TLO and is required for synchronous event processing. The object-level ASI for a response business object for synchronous event processing is described in Table 7.
Object-level ASI | Description |
---|---|
cw_mo_http=HTTPCfgMO | The value of this ASI must match the name of the attribute that corresponds to the Protocol Config MO. The ASI designates the HTTP or HTTPS protocol listener. Both the ASI and the Protocol Config MO are optional. For further information, see Protocol Config MO. Note: The data handler that you configure for business object transformations should be capable of reading any ASI that begins with cw_mo as metadata and not as part of the busisenss data to be converted. The XML data handler has the capability to detect cw_mo metadata, ignoring the attributes that such values point to. |
A fault business object is a child of a TLO and is optional for synchronous event processing. The object-level ASI for a fault business object for synchronous event processing is described in Table 8.
Object-level ASI | Description |
---|---|
cw_mo_http=HTTPCfgMO | The value of this ASI must match the name of the attribute that corresponds to the Protocol Config MO. The ASI designates the HTTP or HTTPS protocol listener. Both the ASI and the Protocol Config MO are optional. For further information, see Protocol Config MO. Note: The data handler that you configure for business object transformations should be capable of reading any ASI that begins with cw_mo as metadata and not as part of the busisenss data to be converted. The XML data handler has the capability to detect cw_mo metadata, ignoring the attributes that such values point to. |
The Protocol Config MO is optionally included as a child of the request, response, or fault business objects for event processing. Typically you specify it when you need to read (from request messages) or propagate (to response or fault messages) the protocol headers and custom properties. As noted above, the request business object optionally declares the name of the Protocol Config MO as business-object-level ASI:
cw_mo_http=HTTPProtocolListenerConfigMOAttribute
During event processing, the connector uses protocol listeners (HTTP or HTTPS) to retrieve events from the transport. These events are messages from internal or external clients requesting service from collaborations. Each transport has its own header requirements. The connector uses the Protocol Config MO to convey the protocol-specific header information from the protocol listener to the collaboration. The Protocol Config MO attributes correspond to headers in the inbound message. The connector sets the value of these attributes in the business object using inbound message content.
For HTTP(S) protocol, the Protocol Config MO attributes are as follows:
Attribute | Required | Type | Description |
---|---|---|---|
Destination | No | String | Used in event notification to propagate Request-URI from the request line. |
Content-Type | No | String | The value of this attribute defines the Content-Type header of the outgoing message (which includes message ContentType and 0 or more parameters --the charset-- for the outgoing message). The syntax is the same as that for the Content-Type header in the HTTP Protocol, for example: text/xml; charset=ISO-8859-4. If there is no Content-Type attribute defined, the connector uses the ContentType of the request as the ContentType of the response/fault message. |
Method | No | String | Will be populated with event request HTTP method in event notification. |
UserDefinedProperties | No | Business object | This attribute holds the user-defined protocol properties business object. |
One or more HTTP headers | No | String | This attribute allows the handler to pass or retrieve the value for the specified HTTP header. |
Authorization_UserId | No | String | This attribute corresponds to the userID of the HTTP basic authentication. |
Authorization_Password | No | String | This attribute corresponds to the password of the HTTP basic authentication |
These attributes are described in:
For further information on protocol listeners, see Protocol listeners. For information describing the Protocol Config MO for request processing, see Synchronous request processing TLOs.
You can optionally specify custom properties in the HTTP(S) Protocol Config MO. You do so by including the UserDefinedProperties attribute. This attribute corresponds to a business object that has one or more child attributes with property values. Every attribute in this business object must define a single property to be read (or, for synchronous responses, written) in the variable portion of the message header as follows:
Table 10 summarizes the application-specific information for these attributes.
Name | Value | Description |
---|---|---|
ws_prop_name (case-insensitive; if not specified the attribute name will be used as the property name | Any valid protocol property name | This is the name of the protocol property. Some vendors reserve certain properties to provide extended functionality. |
If the given custom property ASI (the ws_prop_name) is invalid and there is no logical way to process this header, the connector logs a warning and ignores this property. If the value of the custom property can neither be set nor retrieved after the necessary check against ws_prop_name has been performed, the connector logs the error and fails the event.
If the UserDefinedProperties attribute is specified, the connector will create an instance of a UserDefinedProperties business object. The connector then attempts to extract property values from the message and store them in the business object. If at least one property value is successfully retrieved, the connector will set a modified UserDefinedProperties attribute in the Protocol Config MO.
For synchronous event processing, if a UserDefinedProperties attribute is specified and its business object is instantiated, the connector will process each attribute of this child business object and set the message property value accordingly.
For the purpose of credential propagation, the connector supports the Authorization_UserId and Authorization_Password attributes in the HTTP Protocol Config MO. The support is limited to the propagation of these credentials as part of the HTTP Basic authentication scheme.
If an HTTP or HTTPS protocol listener processes an HTTP service request that includes an authorization header, the listener will parse the header to determine whether it conforms to HTTP Basic authentication. If so, the listener extracts and decodes (using Base64) the username and password. This decoded string consists of a username and password separated by a colon. If the protocol listener finds the Authorization_UserId and Authorization_Password attributes in the Protocol Config MO, the listener sets these values with those extracted from the event authorization header.
Figure 7 shows the business object hierarchy for asynchronous event processing. A request object only is required.
The TLO contains object-level ASI as well as attributes with attribute-level ASI. Both kinds of ASI are discussed below.
Object-level ASI provides fundamental information about the nature of a TLO and the objects it contains. Figure 8 shows the object-level ASI for SERVICE_ASYNCH_TLO_Order, a sample TLO for asynchronous event processing.
Table 4 below describes the object-level ASI for an asynchronous event processing TLO.
Object-level ASI | Description |
---|---|
ws_eventtlo=true |
If this ASI property is set to true, the connector treats this object as a TLO for event processing. |
ws_verb=verb |
Before delivering the TLO to the collaboration, the connector uses this ASI to set the verb on the TLO. In the sample shown inFigure 8, the verb is Create. |
ws_mode=asynch |
During event notification, the connector uses this ASI property to determine whether to invoke the collaboration synchronously (synch) or asynchronously (asynch). For asynchronous processing, this ASI must be set to asynch. The default is asynch. |
Each asynchronous event processing TLO has a single attribute that corresponds to a request business object. Figure 9 shows the request attribute of SERVICE_ASYNCH_TLO_Order, a sample TLO, and the attribute's ASI.
Table 12 summarizes the attribute-level ASI for the request attribute of an asynchronous event processing TLO.
TLO attribute | Attribute-level ASI | Description |
---|---|---|
Request |
ws_botype=request |
This attribute corresponds to a request. The connector uses its ASI to determine whether this TLO attribute is of type request BO. This ASI, not the attribute name, determines the attribute type. If there is more than one request attribute, the connector uses the ASI of the first one. This attribute is required for synchronous event processing TLOs. |
A request business object is a child of a TLO and is required for asynchronous event processing. You can specify a default verb for the request business object. You do so by specifying:
DefaultVerb=true;
in the ASI field for the verb in the Supported Verbs list at the top-level of the Request business object. If DefaultVerb ASI is not specified and the data handler processes a business object with no verb set, the business object is returned without a verb. The object-level ASI for a Request business object for asynchronous event processing is described in Table 13.
Object-level ASI | Description |
---|---|
cw_mo_http=HTTPCfgMO | The value of this ASI must match the name of the attribute that corresponds to the Protocol Config MO. The ASI designates the HTTP or HTTPS protocol listener. Both the ASI and the Protocol Config MO are optional. For further information, see Protocol Config MO. Note: The data handler that you configure for business object transformations should be capable of reading any ASI that begins with cw_mo as metadata and not as part of the busisenss data to be converted. The XML data handler has the capability to detect cw_mo metadata, ignoring the attributes that such values point to. |
ws_tloname=tloname | This ASI specifies the name of the TLO that this object belongs to. During event processing, the connector uses this ASI to determine whether the request business object delivered by the data handler is a child of the TLO. If so, the connector creates the specified TLO, sets the request business object as its child, and uses the TLOs object-level ASI to deliver it to the subscribing collaboration. |
For request processing the connector allows two kinds of TLOs--synchronous and asynchronous. This section discusses synchronous request processing TLOs.
Figure 10 shows the TLO business object hierarchy for synchronous request processing. Request, response, and handler objects are required, fault objects are optional. Unlike event processing, a Protocol Config MO is required for the request objects, and optional for the response and fault objects.
Object-level ASI provides important information about the nature of a TLO and the objects it contains. Figure 11 shows CLIENT_SYNCH_TLO_OrderStatus, a sample TLO for synchronous request processing.
Table 14 describes the object-level ASI for a synchronous request processing TLO. Unlike the ASI for synchronous event processing TLOs, no ws_collab, ws_verb or ws_eventtlo ASI is required at this level for request processing.
Object-level ASI | Description |
---|---|
ws_mode=synch |
During request processing, the connector uses this ASI property to determine whether to invoke the HTTP service synchronously (synch) or asynchronously (asynch). If synch is indicated, then the connector expects a response, and the TLO must include request and response business objects and, optionally, one or more fault objects. The default is asynch. |
Table 15 describes the attributes and ASI for synchronous request processing TLOs.
TLO attribute | Attribute-level ASI | Description |
---|---|---|
MimeType | None |
This attribute specifies the mime type of the data handler that the connector invokes for transforming a Request business object into a request message. This value may be used for transforming synchronous response/fault messages into business objects, depending on the Message Transformation Rules configuration. |
BOPrefix | None | This attribute of type String is passed to the data handler. |
Handler | None | This attribute specifies the protocol handler to use to process the request and is for request processing only. It takes the valuehttp, which designates the HTTP- HTTPS protocol handler. The default is http |
Charset | This optional parameter of type String specifies the charset to be set on the data handler when transforming the Request business object to a message. NOTE: the charset value specified in this attribute will not be propagated in the Content-Type protocol header of the request message. | |
Request |
ws_botype=request |
This attribute corresponds to a request business object. The connector uses this attribute ASI to determine whether this TLO attribute is of type request BO. This ASI, not the attribute name, determines the attribute type. If there is more than one request attribute, the connector uses the ASI of the first populated attribute. |
Response |
ws_botype=response |
This attribute corresponds to the response returned to a collaboration and is required for synchronous request processing. The connector uses this attribute ASI to determine whether this TLO attribute is of type response BO. This ASI, not the attribute name, determines the attribute type. |
Fault |
ws_botype=fault
or ws_botype=defaultfault |
This attribute, optional for synchronous request
processing, corresponds to a fault message returned by an HTTP service
when it cannot successfully populate a response.
The connector uses this ASI to determine if the attribute of TLO is of type fault BO. This ASI, not the attribute name, determines the attribute type. A defaultfault business object is returned if the fault message is a detail element. defaultfault is used in default business object resolution. |
A request business object is a child of a TLO and is required for synchronous request processing. A request business object has object-level ASI.
Table 16 describes the object-level ASI for a request business object for synchronous request processing.
Object-level ASI | Description |
---|---|
cw_mo_http=HTTPCfgMO | The value of this optional ASI must match the name of the attribute that corresponds to the Protocol Config MO. This Protocol Config MO specifies the destination for the HTTP-HTTPS protocol handler. This ASI is used by the HTTP-HTTPS Protocol Handler. Note that the TLO request attribute must have an HTTP Protocol Config MO for request processing. For further information, see HTTP Protocol Config MO for request processing. Note: The data handler that you configure for business object transformations should be capable of reading any ASI that begins with cw_mo as metadata and not as part of the busisenss data to be converted.The XML data handler has the capability to detect cw_mo metadata, ignoring the attributes that such values point to. |
A response business object is a child of a TLO and is required for synchronous request processing. The object-level ASI for a response business object for synchronous request processing is described in Table 17.
Object-level ASI | Description |
---|---|
cw_mo_http=HTTPCfgMO | The value of this ASI must match the name of the attribute that corresponds to the Protocol Config MO. This Protocol Config MO, optional for a response business object, specifies the headers in the response message for the HTTP(s) protocol handler. For further information, see HTTP Protocol Config MO for request processing. Note: The data handler that you configure for business object transformations should be capable of reading any ASI that begins with cw_mo as metadata and not as part of the busisenss data to be converted. The XML data handler has the capability to detect cw_mo metadata, ignoring the attributes that such values point to. |
You can specify a default verb for the response business object. You do so by specifying:
DefaultVerb=true;
in the ASI field for the verb in the Supported Verbs list at the top-level of the Response business object. If DefaultVerb ASI is not specified and the data handler processes a business object with no verb set, the response business object is returned without a verb.
A fault business object is a child of a TLO and is optional for synchronous request processing. The object-level ASI for a fault business object for synchronous request processing is described in Table 18.
Object-level ASI | Description |
---|---|
cw_mo_http=HTTPCfgMO | The value of this ASI must match the name of the attribute that corresponds to the Protocol Config MO. This Protocol Config MO, optional for a fault business object, specifies the headers in the response message for the HTTP-HTTPS protocol handler. For further information, see Protocol Config MO. Note: The data handler that you configure for business object transformations should be capable of reading any ASI that begins with cw_mo as metadata and not as part of the busisenss data to be converted. The XML data handler has the capability to detect cw_mo metadata, ignoring the attributes that such values point to. |
During request processing, the HTTP-HTTPS protocol handlers use the HTTP Protocol Config MO to determine the destination of the target HTTP service. This Protocol Config MO is required for a request business object. The HTTP-HTTPS protocol handlers support HTTP 1.0 POST and GET requests. As shown in Table 19 the sole required attribute (Destination) is the full URL of the target HTTP service. The optional authorization attributes are described in the sections below.
Attribute | Required | Type | Description |
---|---|---|---|
Destination | Required for request processing in the Request business object. | String | The destination URL of the target HTTP service. The HTTP-HTTPS protocol handler uses this attribute to determine the destination of the HTTP service. |
Content-Type | Required for request processing in the Request business
object when request payload needs to be generated.
Also, value for this attribute is required in the case of the protocol listener synchronous response when request has empty payload and response payload is not empty. |
String | The value of this attribute defines the Content-Type header of the outgoing message (which includes message ContentType and optionally charset for the outgoing message). The syntax is the same as that for the Content-Type header in the HTTP Protocol, for example: text/xml; charset=ISO-8859-4. |
Method | No | String | Used in request processing to determine the HTTP method. Possible values are POST and GET. Default value is POST. |
Authorization_UserId | No | String | This attribute corresponds to the userID of the HTTP basic authentication. For further information, see HTTP credential propagation for request processing |
Authorization_Password | No | String | This attribute corresponds to the password of the HTTP basic authentication. For further information, see HTTP credential propagation for request processing |
One or more HTTP headers | No | String | This attribute allows the handler to pass or retrieve the value for the specified HTTP header. |
UserDefinedProperties | No | Business object | This attribute holds the user-defined protocol properties business object. For further information, see User-defined properties for request processing. |
MessageTransformationMap | Optional for request processing - synchronous response only. Not used in event processing. | Single cardinality business object | This is the attribute that points to business object holding 0 or more message transformation rules. The rules hold information regarding the mime type and charset to apply to the incoming message that is specified in the rule. For further information, see Message transformation maps. |
The HTTP Protocol Config MO attributes are described in:
You can optionally specify custom properties in the HTTP Protocol Config MO. You do so by including the UserDefinedProperties attribute. This attribute corresponds to a business object that has one or more child attributes with property values. Every attribute in this business object must define a single property to be read (or, for synchronous responses, written) in the variable portion of the message header as follows:
Table 20 summarizes the application-specific information for these attributes.
Name | Value | Description |
---|---|---|
ws_prop_name (case-insensitive; if not specified the attribute name will be used as the property name | Any valid protocol property name | This is the name of the protocol property. Some vendors reserve certain properties to provide extended functionality. |
If the given custom property ASI (the ws_prop_name) is invalid and there is no logical way to process this header, the connector logs a warning and ignores this property. If the value of the custom property can neither be set nor retrieved after the necessary check against ws_prop_name has been performed, the connector logs the error and fails the event.
If the UserDefinedProperties attribute is specified and its business object is instantiated, the connector processes each attribute of this child business object and sets the message properties values accordingly.
For synchronous request processing, upon receipt of a response message, if the UserDefinedProperties attribute is specified, the connector creates an instance of a UserDefinedProperties business object and attempts to extract property values from the message and then stores them in the new business object. If at least one property value was successfully retrieved, the connector will set modified UserDefinedProperties business object in the Protocol Config MO.
The Message Transformation Map (MTM) feature is supported for request processing HTTP(S) protocol handlers only. MessageTransformationMap is an optional attribute in the Protocol Config MO that points to a business object. The business object contains rules for transforming messages with mime types and charsets that are specified in the rules. If it finds the (case-sensitive) attribute name MessageTransformationMap and this attribute is of the business object type, the connector uses the rules in that object to transform a message.
The MessageTransformationMap attribute has two child business object attributes named TransformationRule and EmptyResponseRule. When trying to find the TransformationRule for a NON-EMPTY message, the HTTP-HTTPS Protocol Handler first attempts to match the message exactly by the ContentType specified in all TransFormationRules. If unsuccessful, the connector attempts to find the rule that applies to multiple types of messages. When the response contains HTTP headers only, the protocol handler uses the EmptyResponseRule business object attribute of MessageTransformationMap. For further information on protocol handler processing, see HTTP-HTTPS protocol handler processing.
TransformationRule business object attributes are listed in Table 21.
EmptyResponseRule business object attributes are listed in Table 22.
Attribute name | Required | Type | Default value | Description |
---|---|---|---|---|
TransformationRule | Optional for request processing. Not used in event notification. | Business object, cardinality N | This is the attribute that holds 1 rule for message transformation. There can be 0 or more instances of this attribute under the MessageTranformationMap attribute. | |
+ContentType | Yes | String | */* | The value of this property specifies the HTTP ContentType of the message for which this transformation rule applies. The default value */* for this attribute enables the connector to apply this rule to any ContentType. For further information on protocol handler processing, see HTTP-HTTPS protocol handler processing. Note that if the Protocol Handler finds more than one rule that has the same ContentType as the other rule, Protocol Handler will log the warning and ignore all duplicate rules, but will use unique rules |
+MimeType | No | String | The mime type to use when calling a data handler while processing messages of the ContentType specified in this business object. | |
+Charset | No | String | The charset to use when transforming a request of the ContentType specified in this business object. | |
+BOPrefix | No | String | The value of this attribute overrides the BOPrefix of the TLO for the synchronous response of the payload to business object transformation. | |
+BOName | No | String | The value of this attribute is passed to the datahandler in the headers hashtable with name of the element set to BOName. If there is a protocol header with the same name, the protocol header value takes precedence over this attribute value. | |
+BOVerb | No | String | The value of this attribute is passed to the datahandler in the headers hashtable with name of the element set to BOVerb. If there is a protocol header with the same name, the protocol header value takes precedence over this attribute value. |
Attribute name | Required | Type | Default value | Description |
---|---|---|---|---|
EmptyResponseRule | No | Single cardinality business object | Wrapper for the data handler invocation rule on the empty response. | |
+Action | No | String | Ignore | Passes one of the following case insensitive values: Ignore - logs a trace message that an empty response was received, do not attempt to generate the response business object. Warning - logs a warning message that an empty response was received, do not attempt to generate the response business object. Error - logs an error message that an empty response was received, do not attempt to generate the response business object. Fail - logs an error message that an empty response was received, do not attempt to generate the response business object, fail the request. Process - invokes the data handler passing http headers as Hashtable in place of config object parameter. |
+MimeType | No | String | The mime type of the datahandler to invoke if the Action attribute's value is Process. | |
+Charset | No | String | The charset to pass to the datahanlder. If not specified, no charset will be passed. | |
+BOPrefix | No | String | The value of this attribute overrides the BOPrefix of the TLO for the synchronous response of the payload to business object transformation. | |
+BOName | No | String | The value of this attribute is passed to the datahandler in the headers hashtable with name of the element set to BOName. If there is a protocol header with the same name, the protocol header value takes precedence over this attribute value. | |
+BOVerb | No | String | The value of this attribute is passed to the datahandler in the headers hashtable with name of the element set to BOVerb. If there is a protocol header with the same name, the protocol header value takes precedence over this attribute value. |
For the purpose of credential propagation, the connector supports the Authorization_UserId and Authorization_Password attributes in the HTTP Protocol Config MO. The support is limited to the propagation of these credentials as part of the HTTP Basic authentication scheme.
The collaboration sets the values of the Authorization_UserId and Authorization_Password attributes in the Protocol Config MO. If these attributes are neither null nor empty, the connector creates an authorization header on the request its sends to the to the target HTTP service. The HTTP/HTTPS protocol handler follows HTTP Authentication: Basic and Digest Access Authentication (RFC 2617) when creating the authorization header.
Figure 12 shows the business object hierarchy for asynchronous request processing. A request and handler object are required. The request object contains a Protocol Config MO for the HTTP-HTTPS protocol handler. These are described in the sections below.
The TLO contains object-level ASI as well as attributes with attribute-level ASI. Both kinds of ASI are discussed below.
Figure 13 shows CLIENT_ASYNCH_Order_TLO, a sample TLO for asynchronous request processing.
Table 23 below describes the object-level ASI for an asynchronous request processing TLO.
Object-level ASI | Description |
---|---|
ws_mode=asynch |
During request processing, the connector uses this ASI property to determine whether to invoke the collaboration synchronously (synch) or asynchronously (asynch). For asynchronous request processing, this ASI must be set to asynch. The default is asynch. |
Table 24 summarizes the attribute-level ASI for the request attribute of an asynchronous request processing TLO.
TLO attribute | Attribute-level ASI | Description |
---|---|---|
MimeType | None |
This attribute specifies the mime type of the data handler that the connector invokes. Note that this attribute is used only for request processing only. |
BOPrefix | None | The value of this attribute is passed to the data handler. |
Handler | None | This attribute specifies the protocol handler to use to process the request and is for request processing only. It takes the value http, which designates the HTTP-HTTPS protocol handler to process the request. The default is http |
Charset | This optional parameter of type String specifies the charset to be set on the data handler when transforming the Request business object to a message. NOTE: the charset value specified in this attribute will not be propagated in the Content-Type protocol header of the request message. | |
Request |
ws_botype=request |
This attribute corresponds to an HTTP service request business object. The connector uses this attribute ASI to determine whether this TLO attribute is of type request BO. This ASI, not the attribute name, determines the attribute type. If there is more than one request attribute, the connector uses the ASI of the first one. |
A request business object is a child of a TLO and is required for asynchronous request processing. The object-level ASI for a request business object for asynchronous request processing is described inTable 25.
Object-level ASI | Description |
---|---|
cw_mo_http=HTTPCfgMO | The value of this ASI must match the name of the attribute that corresponds to the Protocol Config MO. This Protocol Config MO specifies the destination for the HTTP-HTTPS protocol handler. This ASI is used by the HTTP-HTTPS Protocol Handler. Note that the TLO request attribute must have an HTTP Protocol Config MO for request processing. For further information, see HTTP Protocol Config MO for request processing. Note: The data handler that you configure for business object transformations should be capable of reading any ASI that begins with cw_mo as metadata and not as part of the busisenss data to be converted. The XML data handler has the capability to detect cw_mo metadata, ignoring the attributes that such values point to. |
During request processing, the HTTP-HTTPS protocol handler uses the HTTP Protocol Config MO to determine the destination of the target HTTP service. This Protocol Config MO is required for a request business object. For further information, see HTTP Protocol Config MO for request processing.