WebSphere Commerce 可透過離埠傳訊的 SendReceiveImmediate(舊稱收發)服務程式來與其他系統交談。 這可讓 WebSphere Commerce 傳送一則訊息給另一系統並等待其回覆。 SendMsgCmd.sendReceiveImmediate() 的行為與 SendMsgCmd.sendImmediate() 方法類似, 只是它會等待接收其訊息要求的系統傳回一則回覆。
附註:在管理主控台下所設的 'mode' 必須設為 1。
在傳送要求訊息後,WebSphere Commerce 會監聽入埠佇列(預設值為 JMSInboundQueue), 並一直等到使用關聯 ID(同於要求訊息的訊息 ID)的回覆訊息置於佇列中為止。
用於 SendReceiveImmediate 的佇列應有別於 WebSphere MQ 接收程式所用的佇列。
如果要讓 WebSphere Commerce 能使用 SendReceiveImmediate 訊息服務程式,請執行下列步驟:
- 在 MSGTYPES 表格中,針對適用於傳送/接收的新訊息建立一種訊息類型。
- 如果要產生離埠訊息,請在 VIEWREG 表格中建立一個項目,
以便讓您在步驟 1 中所建的 VIEWNAME 連結 JSP 檔。此項目必須使用下列之值:
- INTERFACENAME
- com.ibm.commerce.messaging.viewcommands.MessagingViewCommand
- CLASSNAME
- com.ibm.commerce.messaging.viewcommands.MessagingViewCommandImpl
- PROPERTIES
- docname=JSP filename
VIEWNAME 直欄中的值為用來產生所要傳送之訊息的 VIEWNAME。
- 建立一個 JSP 檔,以產生一則要送至離埠佇列的訊息。 此 JSP 檔名稱應已在新增一列到 VIEWREG 表格中時指定。
- 建立或自訂一個採用 SendMsgCmd.sendReceiveImmediate() 模式以及第 1 步驟中所建立之訊息類型 ID 的指令 (如果是自訂,則必須是作業指令)。這個指令將用來呼叫 SendMsgCmd 介面。
- 使用「管理主控台」,以確定指定給 SendReceiveImmediate 服務程式的傳輸為可用的,像是:WebSphere MQ 配接器。
- 使用「管理主控台」,以定義您在步驟 1 中所建的每一種訊息類型。 在模式欄位中指定 1。這表示 SendReceiveImmediate 通訊模式。