HTTPReply node

This topic contains the following sections:

Purpose

Use the HTTPReply node to return a response from the message flow to the Web service client. This node generates the response to the Web service client from which the input message was received by the HTTPInput node, and waits for confirmation that it has been sent.

If you include an HTTPReply node in a message flow, you must either include an HTTPInput node in the same flow, or the message must be received from another flow that started with an HTTPInput node. The response is associated with the reply by a request identifier that is stored in LocalEnvironment by the HTTPInput node.

This node constructs a reply message for the Web service client from the entire input message tree, and returns it to the requestor.

The HTTPReply node is represented in the workbench by the following icon:

HTTPReply node icon

Using this node in a message flow

Refer to the HTTPInput node for examples of how you can use this node.

Configuring the HTTPReply node

When you have put an instance of the HTTPReply node into a message flow, you can configure it. Right-click the node in the editor view and click Properties. The node's basic properties are displayed.

All mandatory properties for which you must enter a value (those that do not have a default value defined) are marked with an asterisk on the properties dialog.

Configure the HTTPReply node as follows:

  1. Select the Ignore Transport Failures check box if you want transport-related failures to be ignored (for example, if the client is disconnected). If you clear the check box, and a transport-related error occurs, the input message is propagated to the failure terminal. If you clear the check box, you must supply a value for Reply send timeout.
  2. Set the Reply send timeout value if you are not ignoring transport failures. This is the length of time that the node waits for an acknowledgment that the client has received the reply. If the acknowledgment is received within this time, the input message is propagated through the out terminal to the rest of the message flow, if it is connected. If an acknowledgment is not received within this time, the input message is propagated through the failure terminal, if it is connected. If the failure terminal is not connected, and an acknowledgment is not received in time, an exception is generated.
  3. Make sure that the Generate default HTTP headers from reply or response check box is selected if you want the default Web service headers to be created using values from the HTTPReplyHeader or the HTTPResponseHeader. If the appropriate header is not present in the input message, default values are used.

    The node always includes a Content-Length header, set to the correct calculated value, in the HTTPReplyHeader, even if this was not included in the original request.

  4. Select Validation in the properties dialog navigator if you want the MRM parser to validate the body of messages against the dictionary generated from the message set. (If a message is propagated to the failure terminal of the node, it is not validated.)

    For more details refer to Validating messages and Validation properties for messages in the MRM domain.

  5. Select Description in the properties dialog navigator to enter a short description, a long description, or both.
  6. Click Apply to make the changes to the HTTPReply node without closing the properties dialog. Click OK to apply the changes and close the properties dialog.

    Click Cancel to close the dialog and discard all the changes that you have made to the properties.

Connecting the output terminals to another node

Connect the out or failure terminal of this node to another node in this message flow if you want to process the message further, process errors, or send the message to an additional destination.

Terminals and properties

The HTTPReply node terminals are described in the following table.

Terminal Description
In The input terminal that accepts a message for processing by the node.
Failure The output terminal to which the message is routed if a failure is detected when the message is propagated.
Out The output terminal to which the message is routed if it has been successfully propagated, and if further processing is required within this message flow.

The following tables describe the node properties; the column headed M indicates whether the property is mandatory (marked with an asterisk on the properties dialog if you must enter a value when no default is defined), the column headed C indicates whether the property is configurable (you can change the value when you add the message flow to the bar file to deploy it).

The HTTPReply node Basic properties are described in the following table.

Property M C Default Description
Ignore Transport Failures Yes No Selected Whether transport-related failures are ignored. If you select the check box, this action is performed.
Reply send timeout Yes No 120 The time in seconds that the reply node waits before assuming the reply has failed to reach the client. The valid range is zero (which means an indefinite wait) to (231)-1. Valid only if Ignore Transport Failures is cleared.
Generate default HTTP headers from reply or response Yes No Selected The check box is selected if the default Web service headers are created using values from the HTTPReplyHeader or HTTPResponseHeader.

The Validation properties of the HTTPReply node are described in the following table.

Refer to Validation properties for messages in the MRM domain for a full description of these properties.

Property M C Default Description
Validate Yes Yes Inherit Whether validation takes place. Valid values are None, Content and Value, Content, and Inherit.
Failure Action Yes No Exception What happens if validation fails. You can set this property only if you set Validate to Content or Content and Value. Valid values are User Trace, Local Error Log, Exception, and Exception List.
Include All Value Constraints Yes No Selected This property cannot be edited. The default action, indicated by the check box being selected, is that basic value constraint checks are included in Content and Value validation.
Fix Yes No None This property cannot be edited.

The HTTPReply node Description properties are described in the following table.

Property M C Default Description
Short Description No No   A brief description of the node.
Long Description No No   Text that describes the purpose of the node in the message flow.
Related reference
HTTPInput node
HTTPRequest node