本節說明您在安裝和執行配接器之前,必須對 WebSphere Commerce 及其他軟體來執行的安裝與配置作業。
這些作業如下:
安裝 WebSphere Commerce Business Edition 5.4 版 (含修正程式 2)。請參閱產品隨附的文件來取得安裝步驟和後置安裝的配置。 已配備 WebSphere Commerce 傳訊系統來處理與後端系統互動的訊息。
您必須更新 CMDREG 表格來使用 XML 訊息格式,這個表格是 WebSphere Commerce 資料庫中的指令登錄表。
若要安裝 Commerce Enhancement Pack,請從下列 URL 下載 Commerce Enhancement
Pack 驅動程式,並遵循 readme.txt 檔案中的指示:
http://www.ibm.com/software/commerce/epacks
您可搭配現存的 WebSphere Commerce 已發行商店來使用這個配接器, 或建立新的商店。
使用配接器所需的 WebSphere MQ 佇列配置,部份需要視您的 WebSphere Commerce 和 IBM WebSphere InterChange Server 安裝架構的拓蹼而定。 您可能使用下列其中一種拓蹼:
WebSphere Commerce 和 IBM WebSphere InterChange Server 及配接器皆安裝於相同機器上。
WebSphere Commerce 安裝於一部機器上,IBM WebSphere InterChange Server 和連接器安裝於另一部機器上。每一部機器上分別使用不同的佇列管理程式。
WebSphere Commerce 安裝於一部機器上,IBM WebSphere InterChange Server 和連接器安裝於另一部機器上。使用相同的佇列管理程式來管理兩部機器上的佇列。
此拓蹼中,WebSphere Commerce、ICS 及 WebSphere Commerce 的配接器全部都安裝在單一機器上。 單一佇列管理程式處理解決方案中使用的所有 WebSphere MQ 佇列。 建議您使用在安裝 ICS 時所設置的佇列管理程式。
這個拓蹼需要佇列扮演下列角色:
WebSphere Commerce 需要這個佇列存在。 然而,配接器在這個解決方案中並不使用它。
WebSphere Commerce 需要這個佇列存在。 然而,配接器在這個解決方案中並不使用它。
接收從 ICS 傳送至 WebSphere Commerce 的訊息。
將訊息從 WebSphere Commerce 傳送至 ICS。
從 WebSphere Commerce 傳送至 ICS 之有效訊息的原始版本皆儲存於此, 直到配接器完成處理為止;當處理完成時,原始訊息就移至本端「保存」佇列中。
當配接器將訊息處理完畢並從 WebSphere Commerce 傳送至 ICS 之後, 訊息的原始版本就儲存於此。
如果訊息順利剖析,但並未對應於配接器支援的任何商業物件,則儲存於此。
如果訊息未順利轉換成商業物件及傳送至 ICS,則儲存於此。
儲存 WebSphere Commerce 無法順利處理的訊息。
僅於同步資料交換的配置中使用。
上述所有佇列皆在單一機器拓蹼中。 若您以手動方式建立佇列,則可以選擇指派的名稱; 如果您使用這個解決方案所提供的批次檔(說明如下), 則批次檔將使用預先指派的名稱來建立佇列。
若您正於 Windows 環境中使用配接器,則可使用批次檔來產生適合單一機器拓蹼的佇列。 檔案會隨著您的產品套件一同安裝於 IBM ICS 安裝根目錄的 \Connector\WebSphereCommerce\Utilities 子目錄中。 若要使用批次檔來建立佇列,請執行檔案 ConfigureWebSphereCommerceAdapter.bat,如下所述:
從指令提示中輸入:
ConfigureWebSphereCommerceAdapter <InterChangeServerName>.queue.manager
其中 <InterChangeServerName> 是您的 WebSphere InterChange Server 名稱。
這會建立一個名為 InterChange ServerName.queue.manager 的佇列管理程式,並建立必要的 WebSphere MQ 佇列。 批次檔建立的佇列名稱如下:
WC_MQCONN.IN_PROGRESS 配接器的進行中佇列。
WC_MQCONN.ERROR ICS 配接器的錯誤佇列。
WC_MQCONN.ARCHIVE 配接器的保存佇列。
WC_MQCONN.REPLY 配接器的 Reply-To_Queue。
WC_MQCONN.UNSUBSCRIBED 配接器的取消訂閱佇列。
WCS_Serial_Inbound WebSphere Commerce 的序列入埠佇列。 必須符合針對 WebSphere Commerce 所定義的 JMS 佇列名稱, 如配置 WebSphere Application Server JMS 設定所述。
WCS_Outbound WebSphere Commerce 的離埠佇列。 必須符合針對 WebSphere Commerce 所定義的 JMS 佇列名稱, 如配置 WebSphere Application Server JMS 設定所述。
WCS_Parallel_Inbound WebSphere Commerce 的並行入埠佇列。 必須符合針對 WebSphere Commerce 所定義的 JMS 佇列名稱, 如配置 WebSphere Application Server JMS 設定所述。
WCS_Error WebSphere Commerce 的錯誤佇列。 必須符合針對 WebSphere Commerce 所定義的 JMS 佇列名稱, 如配置 WebSphere Application Server JMS 設定所述。
WCS_Inbound WebSphere Commerce 的入埠佇列。 必須符合針對 WebSphere Commerce 所定義的 JMS 佇列名稱, 如配置 WebSphere Application Server JMS 設定所述。
此拓蹼中,WebSphere Commerce 安裝於一部機器上, IBM WebSphere ICS 及 WebSphere Commerce 的配接器安裝於另一部機器上。
每一部機器上必須安裝 WebSphere MQ,且每一個安裝架構需使用不同的佇列管理程式。 這些是您在每一部機器上所建立的佇列。
WebSphere Commerce 機器上的佇列
|
ICS 機器上的佇列
|
---|---|
WCS_Outbound 佇列 將訊息從 WebSphere Commerce 傳送至 ICS。 此佇列是作為遠端佇列定義來建立的,
指向 ICS 機器上的 ICS_Inbound 以作為遠端佇列。
|
ICS_Inbound 佇列 接收從 WebSphere Commerce 傳送至 ICS 的訊息。
|
WCS_Serial 入埠佇列 接收從 ICS 傳送至 WebSphere Commerce 的訊息。
|
ICS_Outbound 佇列 將訊息從 ICS 傳送至 WebSphere Commerce。 此佇列是當做遠端佇列定義來建立的,
指向 WebSphere Commerce 機器上的 WCS_Serial 入埠當做遠端佇列。
|
至 ICS 從 WebSphere Commerce 系統至 ICS 的傳輸佇列。
|
至 WebSphere Commerce 從 ICS 至 WebSphere Commerce 系統的傳輸佇列。
|
WCS_Error_queue 儲存 WebSphere Commerce 無法順利處理的訊息。
|
ICS_Error_queue 如果訊息未順利轉換成商業物件,則儲存於此。
|
WCS_Parallel 入埠
|
配接器不使用並行入埠佇列。
|
|
ICS_InProgress 佇列 從 WebSphere Commerce 傳送至 ICS 之有效訊息的原始版本皆儲存於此,
直到配接器完成處理為止;當處理完成時,原始訊息就移至本端「保存」佇列中。
|
|
ICS_Archive_queue 當配接器將訊息處理完畢並從 WebSphere Commerce 傳送至 ICS 之後,
訊息的原始版本就儲存於此。
|
|
ICS_Unsubscribed_queue 若訊息順利轉換成商業物件,但並未對應於配接器支援的任何商業物件,則儲存於此。
|
若要在兩個系統之間能夠通信,請使用通道和傳輸佇列。
根據這個拓蹼,每一部機器上必須建立扮演下列角色的通道。
WebSphere Commerce 機器上的通道 | ICS 機器上的通道 |
---|---|
Sender_WCS
|
Sender_ICS
|
Receiver_ICS
|
Receiver_WCS
|
於下列指示中,已指定特定伺服器和佇列管理程式,使不同的機器和佇列可產生關聯。 通道是用來確認佇列間相互參照的正確性;佇列的「本端」版本是用來存放實際資訊。
請在 WebSphere Commerce 機器上執行下列配置作業:
如此就完成 WebSphere Commerce 機器的配置作業。
請在 ICS 機器上執行下列配置作業:
當您在 WebSphere Commerce 機器和 ICS 機器上完成 WebSphere MQ 佇列和通道的配置之後, 請啟動接收者通道,再啟動傳送者通道。
此拓蹼中,WebSphere Commerce 安裝於一部機器上, ICS 及 WebSphere Commerce 的配接器安裝於另一部機器上。 僅有一個 WebSphere MQ 實例在執行,兩部機器所用的佇列由單一佇列管理程式來管理。 此實務中僅使用本端佇列。
這個拓蹼需要佇列扮演下列角色:
WebSphere Commerce 需要這個佇列存在。 然而,配接器在這個解決方案中並不使用它。
將訊息從 ICS 傳送至 WebSphere Commerce。
接收從 WebSphere Commerce 傳送至 ICS 的訊息。
從 WebSphere Commerce 傳送至 ICS 之有效訊息的原始版本皆儲存於此, 直到配接器完成處理為止;當處理完成時,原始訊息就移至本端「保存」佇列中。
當配接器將訊息處理完畢並從 WebSphere Commerce 傳送至 ICS 之後, 訊息的原始版本就儲存於此。
如果訊息順利剖析,但並未對應於配接器支援的任何商業物件,則儲存於此。
如果訊息未順利轉換成商業物件及傳送至 ICS,則儲存於此。
儲存 WebSphere Commerce 無法順利處理的訊息。
僅於同步資料交換的配置中使用。
您必須配置 WebSphere Application Server (WAS) 以建立 Java Messaging Service Connection Factory 和 JMS 佇列來搭配 WebSphere MQ 一起使用。 作法為執行下列步驟:
set classpath= %classpath%;MQ_install_path\java\lib\com.ibm.mqjms.jar; MQ_install_path\java\lib\com.ibm.mq.jar; MQ_install_path\java\lib\com.ibm.mq.iopp.jar; MQ_install_path\java\lib\com.ibm.ibmorb.jar;WAS_install_path\lib\ns.jar
set MQ_JAVA_INSTALL_PATH=MQ_install_path\java
set PATH = WAS_Intall_Path\Java\bin;%PATH%
INITIAL_CONTEXT_FACTORY=com.ibm.ejs.ns.jndi.CNInitialContextFactory PROVIDER_URL=iiop://localhost:900
上述值假設 WebSphere Commerce 和 WebSphere MQ 皆安裝於相同的機器上。
SECURITY_AUTHENTICATION=none
CommandPrompt:> JMSAdmin -cfg JMSAdmin.config -t -v
執行此指令可讓您查閱 WebSphere Application Server 所提供的 JNDI (Java Naming and Directory Interface) 服務。 您將看到 InitCtx> 提示,可供您執行 JMS 管理指令。
其中 JMS_QueueConnection_Factory 為 MQQueueConnectionFactory JMS 物件的名稱。
當您執行上述指令集時,WebSphere Application Server 資料庫的 BINDINGBEANTBL 表格中會建立這個佇列連線 Factory 的項目。 這些物件皆登錄於 WebSphere Application Server 資料庫中。
下列語法定義 JMS 佇列:
define q(JMS_Outbound_Queue)qmanager (Your_Queue_Manager_Name) queue(Your_Outbound_QueueName)
define q(JMS_Inbound_Queue)qmanager (Your_Queue_Manager_Name) queue(Your_Inbound_QueueName)
define q(JMS_Parallel_Inbound_Queue)qmanager (Your_Queue_Manager_Name)queue (Your_Parallel_Inbound_Queue_Name)
define q(JMS_Serial_Inbound_Queue)qmanager (Your_Queue_Manager_Name)queue (Your_Serial_Inbound_Queue_Name)
define q(JMS_Error_Queue)qmanager (Your_Queue_Manager_Name) queue (Your_Error_Queue_Name)
Your_Outbound_QueueName
|
為離埠佇列所建立的 WebSphere MQ 佇列。 依預設,配接器會輪詢此佇列以挑選來自
WebSphere Commerce 的訊息再傳送至 ICS。 在批次檔所建立的預設 WebSphere MQ
佇列設定中,此值應為 WCS_Outbound
|
Your_Serial_Inbound_Queue
|
為序列入埠佇列所建立的 WebSphere MQ 佇列。 WebSphere Commerce MQ Adapter
會將 ICS 傳送至 Websphere Commerce 的訊息置入此佇列中。 在批次檔所建立的預設
WebSphere MQ 佇列設定中,此值應為 WCS_Serial_Inbound
|
Your_Parallel_Inbound_Queue_Name
|
為並行入埠佇列所建立的 WebSphere MQ 佇列
|
Your_Error_Queue_Name
|
為錯誤佇列所建立的 WebSphere MQ 佇列。 此為 WebSphere Commerce MQ Adapter
發現訊息有錯誤時傳送訊息的地方。 於批次檔所建立的預設 WebSphere MQ
佇列設定中,此值應為 WCS_Error
|
Your_Queue_Manager_Name
|
佇列管理程式的名稱,負責處理您 WebSphere Commerce 系統設定中的 WebSphere MQ
佇列。 於典型的單一機器設定中,例如批次檔 ConfigureAdapterQueues.bat
所建立的設定 (請參閱安裝和配置 WebSphere Commerce), 您對 ICS 所建立的佇列管理程式亦會用來管理 WebSphere
Commerce 系統的佇列。此設定之下,預設值是
<InterchangeServerName>.queue.manager
|
在建立佇列之後,請使用 JMSAdmin 主控台,對離埠和錯誤佇列設定下列內容。 此程序指定 JMS 正在處理原生的 WebSphere MQ 應用程式。
鍵入 end 來結束 JMSAdmin 工具。對於執行 WebSphere Commerce 的 WebSphere Application Server,就能完成 Java Messaging Service 的配置。
啟動「WebSphere Commerce 管理主控台」。 以「網站管理者」的身份登入,跳到「配置」區段中選擇「傳輸」選項。 選取 WebSphere MQ 作為您的傳輸機制,並將狀態變更為作用中。 登出「管理主控台」。
WebSphere Commerce 解決方案需要建立和使用「商店」, 請參閱 WebSphere Commerce Installation Guide 的說明。在您完成公佈手冊的 Publishing a Sample Store 這一節所提及的商店之後, 請以「商店管理者」的身份登入「管理主控台」,然後選取您正在使用的商店。 於「配置」區段中,請將「MQ 傳輸」新增至商店。 此會在 STORETRANS 表格中製作一個項目。
若要啟用傳訊系統傳輸配接器,請啟動「WebSphere Commerce 配置管理程式」,並執行下列動作:
使用您對此實例的 connectionSpec 所用的值來配置 JMSQueue 名稱和 JMS Connection Factory, 如下所示:
結束「配置管理程式」。
您必須更新實例的 WebSphere Application Server 類別路徑, 新增其他的 jar 檔項目。 作法是開啟「WebSphere Application Server 進階管理主控台」來完成下列設定:
name= ws.ext.dirs value=MQ_INSTALL_PATH/java/lib
其中 MQ_INSTALL_PATH 是您安裝 WebSphere MQ 的路徑。
於 WebSphere Commerce 中,請使用「管理主控台」下的配置選項, 配置 WebSphere Commerce,與 WebSphere MQ 佇列進行通訊, 供 WebSphere Commerce 和 IBM WebSphere ICS 實作中使用的離埠和入埠傳訊之用。 如需其他的指示,請參閱 WebSphere Commerce Online Help 手冊。