MSMQ Adapter 6.0 | webMethods MSMQ Adapter Documentation | webMethods MSMQ Adapter Installation and User’s Guide Documentation | Adapter Notifications | Listener Notifications | Configuring Listener Notifications | Configuring Synchronous Listener Notifications
 
Configuring Synchronous Listener Notifications
Perform the following tasks to configure synchronous listener notifications.
*To configure an MSMQ synchronous listener notification
1. Review the steps in Before You Configure Listener Notifications.
2. Start Designer.
3. Using Designer, perform the following:
a. Right-click the package in which the notification should be contained and select New > Adapter Notification.
b. Select the parent namespace and type a name for the adapter notification.
c. Click Next.
4. Select MSMQ Adapter as the adapter type and click Next.
5. Select Synchronous Listener Notification from the template and clickNext.
6. Select the appropriate Notification Listener Nameand click Next.
7. Select the appropriate Service Node and click Next.
8. Select a package and folder to contain the notification, type a unique name for the notification, and click Next.
9. Click Finish.
The Adapter Notification template creates the following items:
*A Synchronous Listener Notification
*Two Synchronous Document Types:
*Synchronous Reply Document Type
*Synchronous Request Document Type
Note:
You cannot edit any fields or properties on the Publications Properties tab for the Synchronous Request and Reply Document Types. Integration Server does not publish these document types.
10. Select the Adapter Settings tab, to view the adapter properties and to select the appropriate service name for the synchronous notification.
a. The following fields in the Adapter Properties section are read-only:
Adapter Properties
Description
Adapter Name
The name of the adapter.
Adapter Listener Name
The name of the adapter listener that you selected when you configured the synchronous notification.
Adapter Notification Template
The name of the adapter notification template that you selected when you configured the synchronous notification.
b. Specify one of the following modes in the Execution Mode section:
*To invoke a flow service directly, select Service Invoke and specify the following field:
Property
Description
Service Name
The name of the service, which you selected when you initially configured the adapter listener notification, appears in the Service Name field.
Select a different service by clicking the icon to the right of the Service Name field.
Important:
Before you select a different service, make sure that you have disabled the notification. When the notification is enabled, then the new service is utilized. For more information on enabling and disabling listeners, see Enabling Listeners and Disabling Listeners.
*To publish documents locally or to a Broker and wait for a reply, select Publish and Wait and specify the following fields:
Properties
Description
Local
Select true to publish documents locally (to this Integration Server only) or false to publish to the Broker connected to this Integration Server.
Note:
If no Broker is configured for Integration Server, documents will be published locally.
Wait Time
Specify the number of milliseconds to wait for a reply. The default is -1, which means to wait indefinitely.
11. Select theFilter tab to specify which property values should match the arriving message to run the notification.
a. From the drop-down menu, select one of the following Message Filtering Modes:
*MATCH_ONE - Any one of the selected properties can be used to identify the message.
*MATCH_ALL - All selected properties will be used to identify the message.
Note:
If none of the properties are selected, all messages will pass the filter criteria.
b. Select the property fields and enter the values for the properties. Use the following icons to manage the rows in theProperty column:
*To define a new property, select the icon (or the icon).
*To change the order of the properties to ensure that the parameters are parsed in the correct order, use the or icons.
*To delete a property, use the icon.
You can add the following property fields:
Property
Description
MessageId
Identifies the message using a hex string.
CorrelationId
Identifies the message using a hex string correlation identifier. For example, {F944A0B1-1DA0-4A93-A266-E54ACDD55342}\30775.
Delivery
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.
Priority
Specifies the 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.
AppSpecific
Specifies application-generated single integer values.
12. Select the Output Message Property tab to identify the message property fields that will be generated in the notification request document.
You can add the following property fields:
Property
Property Type
Description
Ack
java.lang.Integer
Specifies the type of acknowledgment messages that Message Queuing will post in administration queue when acknowledgments are requested.
AdminQueuePathName
java.lang.String
Specifies the queue path name used for Message Queuing-generated acknowledgment messages.
AdminQueueFormatName
java.lang.String
Specifies the queue format name used for Message Queuing-generated acknowledgment messages.
AppSpecific
java.lang.Integer
Specifies application-generated single integer values.
ArrivedTime
java.lang.String
Specifies the time when the message arrives in the queue.
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-bytes 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.
DestinationQueuePathName
java.lang.String
Specifies the destination queue path name of the message
DestinationQueueFormatName
java.lang.String
Specifies the destination queue format name of the message.
MessageId
java.lang.String
Identifies the message using hex string.
MessageIdByteArray
byte array
Identifies the message using an MSMQ-generated 20-byte message identifier.
IsAuthenticated
java.lang.Integer
Indicates whether the message was authenticated at the request of the sending application. Valid values are:
*1 - the message is authenticated.
*0 - the message is not authenticated.
IsFirstInTransaction
java.lang.Integer
Indicates whether the message was the first message sent in its transaction. Valid values are:
*1 - the message is first.
*0 - the message is not first.
IsLastInTransaction
java.lang.Integer
Indicates whether the message was the last message sent in its transaction. Valid values are:
*1 - the message is last.
*0 - the message is not last.
Label
java.lang.String
Provides a description of the message.
Journal
java.lang.Integer
Specifies whether Message Queuing stores copies of the message as it is routed to the destination queue. Valid values are:
*0 - the journal is disabled.
*1 - the message is stored in the applicable dead-letter queue on failure.
*2 - a copy of the message is stored in the computer journal if the message was successfully delivered to the next computer.
MaxTimeToReachQueue
java.lang.Integer
Specifies the time limit (in seconds) for a message to reach the queue.
MaxTimeToReceive
java.lang.Integer
Specifies the time limit (in seconds) for the message to be retrieved from the target queue.
MsgClass
java.lang.Integer
Indicates the message type.
Priority
java.lang.Integer
Specifies the 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.
SendTime
java.lang.String
Indicates when the message is sent.
SourceMachineGuid
java.lang.String
The property provides the GUID of the computer that sent the message.
13. Select the Permissions tab to manage the access control list (ACL) information. Use the drop-down menu to select each of the ACL types. For general information about assigning and managing ACLs, see the webMethods Service Development Help for your release.
14. From the Filemenu, select Save.