Configuring Put Services
A Put service delivers a message to a specified queue. You configure MSMQ Adapter services using Designer. The input and output signatures for the Put service are located on the Input/Output tab of Designer.
When you configure the Put service, the
Input document is automatically generated in the input signature of the Put service on the
Input/Output tab. The
Input document contains the
Body and the input fields from the
Input Message Propertytab. You can map a variable that is in the pipeline to the
Body variable in the input signature of the Put service. For more information, see
Using the Pipeline Editor to View and Set the
Body.
The Output document also is generated automatically in the output signature of the Put service on the Input/Output tab. MSMQ Adapter passes the output fields from the Output Message Properties tab in Designer to the output signature.
For more information about Put services, see
Put Service.

To configure a Put service
2. Start Designer.
3. Using Designer, perform the following:
a. Right-click the package in which the service should be contained and select New > Adapter Service.
b. Select the parent namespace and type a name for the adapter service.
c. Click Next.
4. Select MSMQ Adapter as the adapter type and click Next.
5. For Adapter Connection Name, select a connection with an outbound queue access mode, and then click Next.
Important:
If you are using the adapter with Integration Server 8.0 SP1 or earlier, adapter services cannot use connections that are also used for adapter listeners.
6. From the list of available templates, select the Put template and using Designer, click Finish.
The adapter service editor for the Put service appears. You can select the Adapter Settings tab at any time to confirm adapter service properties such as Adapter Name, Adapter Connection Name, and Adapter Service Template, as necessary.
7. Select the Put Service tab to identify optional message processing features to use with this adapter service. Set the fields as follows:
Field | Description/Action |
Acknowledgement | Specifies whether MSMQ generates an acknowledgment message. Select one of the following values: NONE indicates that no acknowledgment messages are posted. FULL_REACH_QUEUE posts a positive or negative acknowledgment, depending on whether the message reaches the queue. FULL_RECEIVE posts a positive or negative acknowledgment, depending on whether the message is retrieved from the queue before its time-to-be-received timer expires. NACK_REACH_QUEUE posts a negative acknowledgment when the message cannot reach the queue. NACK_RECEIVE posts a negative acknowledgment when the message cannot be retrieved from the queue before the message's time-to-be-received timer expires. Note: For all values except NONE, you must also specify an Admin Queue Path Name. |
Admin Queue Path Name | Specify an existing administration queue path name if Acknowledgement is not set to NONE. Note: Enter a valid path name for an existing queue. MSMQ Adapter does not validate the path name during run time. |
Authentication | Signs the sending message based on the source computer digital signature registry entry. |
Journal | A copy of the message is stored in the computer journal if the message is successfully delivered to the next computer. |
Deadletter | Sends a message to an applicable dead-letter queue on failure. |
Trace | Specifies whether to trace the route of a message. |
8. Select the Input Message Property tab to identify message properties for the fields in the pipeline before the Put service is executed. Use the following icons to manage the rows in the Property column:

To define new property fields, select the

icon (or the

icon).

To ensure that the parameters are parsed in the correct order, use the

or

icons to change the order of the property fields or the output field names.

To delete any property fields or output field names, use the

icon.
You can add the following property fields to the Property column:
Property | Property Type | Description |
AppSpecific | java.lang.Integer | Specifies application-generated single integer values. |
CorrelationId | java.lang.String | Identifies the message using a hex string correlation identifier. For example, {F944A0B1-1DA0-4A93-A266-E54ACDD55342}\30775. |
CorrelationIdByteArray | byte array | Identifies the message using a 20-byte correlation identifier. |
Delivery | java.lang.Integer | Specifies how Message Queuing delivers the message. Valid values are:  1 - indicates that along its route, the message is stored locally on disk until it is forwarded to the next computer.  0 - indicates that along its route, the message stays in volatile memory until it is received. |
Label | java.lang.String | Provides a description of the message. |
MaxTimeToReachQueue | java.lang.Integer | Specifies the time limit (in seconds) for a message to reach the queue. |
Priority | java.lang.Integer | Specifies message priority. Value is between 0 - 7. The lower number indicates lower priority. Default: 3. Note: Message Queuing automatically sets the priority level of the transactional messages to 0, which indicates that the priority is ignored by the transaction. |
MaxTimeToReceive | java.lang.Integer | Specifies the time limit (in seconds) for a message to be retrieved from the target queue. |
9. Select the Output Message Property tab to identify message properties returned into the pipeline after the service is executed. You can add the following property fields to the Property column:
Property | Property Type | Description |
MessageId | java.lang.Integer | Identifies the message using a hex string. |
MessageIdByteArray | byte array | Identifies the message using an MSMQ-generated 20-byte message identifier. |
CorrelationId | java.lang.String | Identifies the message using a hex string correlation identifier. For example, {F944A0B1-1DA0-4A93-A266-E54ACDD55342}\30775. |
CorrelationIdByteArray | byte array | Identifies the message using a 20-byte correlation identifier. |
Delivery | java.lang.Integer | Specifies how Message Queuing delivers the message. Valid values are:  1 - indicates that along its route, the message is stored locally on disk until it is forwarded to the next computer.  0 - indicates that along its route, the message stays in volatile memory until it is received. |
Label | java.lang.String | Provides a description of the message. |
Priority | java.lang.Integer | Specifies message priority. The value is between 0 - 7. The lower number indicates lower priority. Default: 3. Note: Message Queuing automatically sets the priority level of the transactional messages to 0, which indicates that the priority is ignored by the transaction. |
MaxTimeToReceive | java.lang.Integer | Specifies the time limit (in seconds) for a message to be retrieved from the target queue. |
10. When using Designer, Designer contains only the Adapter Settings and Input/Output tabs. The information from the Audit and Permissions tabs appears in the Properties panel, and the information from the Results tab appears in the Service Results panel (in Designer). For more information, see the webMethods Service Development Help for your release.
11. From the File menu, select Save.