ApplicationAdapter
ApplicationAdapter 範例會示範當您收到訊息時,如何從公開程序和私用程序 (回應者或啟動者) 傳送通知。 您可以利用想要的任何其他功能自訂這個範例。
ApplicationAdapter 範例示範如何實 IApplicationAdapter
作 類別的 ApplicationAdapter1
介面。 這個類別包含兩種方法和 BeginNotify
Notify
。 每個類別的參數都是訊息類別、來源合作對象名稱、目的合作對象名稱、夥伴介面程序 (PIP) 代碼、PIP 執行個體識別碼以及 PIP 版本。
您可以在 Microsoft® BizTalk Accelerator for RosettaNet (BTARN) Management Console 中,于合約的 [一般] 索引標籤上輸入元件名稱和類別名稱來設定合約的 ApplicationAdapter。 應用程式配接器 .dll 檔會在與 BizTalk 主控件服務相同的認證下執行。
如果您變更 ApplicationAdapter 範例或任何 ApplicationAdapter 範例相依的外部環境變數,請重新開機裝載 BTARN 公用程式的 BizTalk 主機服務。
ApplicationAdapter 範例程式碼位於 <drive> :\Program Files\ BizTalk < Version > Accelerator for RosettaNet\SDK\ApplicationAdapter\。
示範
ApplicationAdapter 範例會示範如何通知回應者私用程序,公開程序已經收到訊息。 通知會指示訊息類別、來源合作對象名稱、目的合作對象名稱、PIP 代碼、PIP 版本以及 PIP 執行個體識別碼。 您可以對動作或回應訊息傳送這個通知。
BeginNotify
和 Notify
方法的運作方式如下:
回應者公開程序會接收訊息。
注意
下列步驟也適用於公開啟動者從回應者接收回應訊息的情況。
如果接收管線和公用進程驗證,以及驗證配接器如果適用,則回應程式公用進程會呼叫
BeginNotify
類別中的ApplicationAdapter
方法。 這個方法會通知回應者私用程序,公開程序已經收到新的訊息,並將訊息儲存在 MessageBox 資料庫中。回應者公開程序會傳送信號訊息給啟動者。
回應者公開程序會傳送訊息服務內容給回應者私用程序。
回應者私用程序會將訊息放在 BTARNDATA 資料庫的 MessagesToLOB 表格中。
回應程式私用進程會呼叫
Notify
類別中的ApplicationAdapter
方法,以將 End Notify 訊息傳回給回應者公用進程。 回應者公開程序必須接收這個 End Notify 訊息,程序才能順利完成。 否則,訊息會處於擱置狀態。
注意
您可以使用 Notify
訊息來向企業營運 (LOB) 應用程式發出訊息正在等候的 MessagesToLOB 資料表。 只要系統通知 LOB 應用程式,LOB 應用程式就能從該表格接收訊息。
實作這個範例
若要實作 ApplicationAdapter 範例,您必須在協議中加入應用程式配接器。
在協議中加入應用程式配接器
按一下[開始],指向[所有程式],指向[Microsoft BizTalk < Version > Accelerator for RosettaNet],然後按一下[BizTalk Accelerator for RosettaNet管理主控台]。
在 BizTalk Accelerator for RosettaNet 管理主控台中,展開[BizTalk Accelerator for RosettaNet],然後按一下 [合約]。
按兩下您要加入至應用程式配接器的協議。
在 [ 應用程式配接器 ] 方塊中,按一下 [省略號] 按鈕 (...) 按鈕到 [元件名稱] 右邊,移至包含應用程式配接器元件的位置,選取適當的 .dll 檔案,然後按一下 [ 開啟]。
按一下 [類別名稱] 的向下箭號,選取應用程式配接器類別,然後按一下 [ 確定]。