Configuring Multi-hop Messaging
Use the routing parameter in the TPA to configure multi-hop messaging.
![*](icon_task_xpe.png)
To configure routing information for a multi-hop scenario
1. Start the Trading Networks Console.
2. Open the agreement for edit:
a. From Trading Networks Console, select View > Agreements.
b. Select the agreement you would like to edit. ClickEdit.
The Agreements Details screen appears.
c. On the right side of the Agreement Details screen, click Set Inputs.
The input for com.wm.estd.ebxml.documents appears.
Note:
You can edit the TPA parameters in an agreement only if the Agreement Status is Proposed. For information about changing the TPA agreement status, see the webMethods Trading Networks Administrator’s Guide for your release.
4. Update the values of the following Routing parameters in the TPA to provide the routing information for multi-hop messaging:
![*](chapterTOC_bullet.png)
previousMSH
![*](chapterTOC_bullet.png)
nextMSH
![*](chapterTOC_bullet.png)
senderMSH
![*](chapterTOC_bullet.png)
receiverMSH
The intermediary nodes use the values of the parameters previousMSH and nextMSH to determine the next MSH to forward the message. The sender and receiver intermediaries (the origin node and the destination node) use the values of the parameters senderMSH and receiverMSH to load the original sender-receiver TPA.
For example, assume that Party A is the sender and Party B is the receiver of a message and Party C1, C2 … Cn are the intermediary nodes. To accomplish the multi-hop messaging, you must set up the TPAs as follows:
Party Name | For the agreement between... | Set the following TPA parameters to... |
Party A | Party A and Party B | nextMSH.ids=C1 nextMSH.idTypes=DUNS previousMSH.ids=Cn previousMSH.idTypes=DUNS Leave all the other Routing parameters blank. |
| Party A and Party C1 | nextMSH.ids=C2 nextMSH.idTypes=DUNS senderMSH.ids=A senderMSH.idTypes=DUNS receiverMSH.ids=B receiverMSH.idTypes=DUNS Leave the previousMSH parameter blank. |
Party C1 | Party A and Party C1 | nextMSH.ids=C2 nextMSH.idTypes=DUNS senderMSH.ids=A senderMSH.idTypes=DUNS receiverMSH.ids=B receiverMSH.idTypes=DUNS Leave the previousMSH parameter blank. |
| Party C1 and Party C2 | previousMSH.ids=A previousMSH.idTypes=DUNS nextMSH.ids=C3 nextMSH.idTypes=DUNS Leave all the other Routing parameters blank. |
Party C2 | Party C1 and Party C2 | previousMSH.ids=A previousMSH.idTypes=DUNS nextMSH.ids=C3 nextMSH.idTypes=DUNS Leave all the other Routing parameters blank. |
| Party C2 and C3 | previousMSH.ids=C1 previousMSH.idTypes=DUNS nextMSH.ids=C4 nextMSH.idTypes=DUNS Leave all the other Routing parameters blank. |
Party Cn | Party Cn-1 and Party Cn | previousMSH.ids=Cn-2 previousMSH.idTypes=DUNS nextMSH.ids=B nextMSH.idTypes=DUNS Leave all the other Routing parameters blank. |
| Party Cn and Party B | previousMSH.ids=Cn-1 previousMSH.idTypes=DUNS senderMSH.ids=A senderMSH.idTypes=DUNS receiverMSH.ids=B receiverMSH.idTypes=DUNS Leave the nextMSH parameter blank. |
Party B | Party Cn and Party B | previousMSH.ids=Cn-1 previousMSH.idTypes=DUNS senderMSH.ids=A senderMSH.idTypes=DUNS receiverMSH.ids=B receiverMSH.idTypes=DUNS Leave the nextMSH parameter blank. |
| Party A and Party B | nextMSH.ids=C1 nextMSH.idTypes=DUNS previousMSH.ids=Cn previousMSH.idTypes=DUNS Leave all the other Routing parameters blank. |
Each party only needs to be aware of two other parties and two TPAs. For example, Party A only needs to know Party B and Party C1, and TPA_A_B and TPA_A_C1. Party C2 only needs to know Party C1 and C3, and TPA_C1_C2 and TPA_C2_C3.
5. To use reliable message with multi-hop messaging, you must enable reliable messaging for all intermediary nodes by configure the TPAs of all the intermediaries. For more information, see
Reliable Messaging.