共用方式為


如何:使用 UDDI 類別搜尋解決服務端點

目標

本節示範如何使用 ESB Designer網域特定語言 (DSL) 來建立使用通用描述、探索和整合 (UDDI) 3 解析程式來尋找服務端點的路線型路由名單。 在此案例中,服務端點將會是 UDDI 中發佈的檔案端點。

在此操作說明主題中,您將完成下列步驟:

  • 建立路線路由名單以解析服務端點。

  • 設定使用 UDDI 3 解析程式將訊息路由傳送至服務端點的路線。

  • 使用路線測試用戶端範例應用程式測試路線。

必要條件

本操作說明主題中的程式需要完成 開發活動的必要條件

步驟

建立路線模型

  1. 在 Visual Studio 中,開啟 C:\HowTos\Patterns\Patterns.sln。

  2. 在方案總管中,以滑鼠右鍵按一下[行程][程式庫] 專案,指向 [新增],然後按一下 [新增路線]。

  3. 在 [新增專案] 對話方塊中,于 [名稱] 方塊中輸入UDDI3CategorySearch,然後按一下 [新增]。

設定路線的屬性

  1. 在 Visual Studio 中,按一下 UDDI3CategorySearch.行程的設計介面。 在UDDI3CategorySearch屬性視窗中,設定下列屬性:

    1. 在 [ 模型匯出工具 ] 下拉式清單中,按一下 [ XML 路線匯出工具]。

    2. 在 [ 擴充功能設定 ] 區段的 [ 路線 XML 檔案 ] 屬性旁,按一下省略號按鈕 (...) 。

    3. 在 [選取 XML 檔案]對話方塊中,于 [檔案名] 方塊中輸入C:\HowTos\Itineraries\UDDI3CategorySearch,然後按一下 [儲存]。

      注意

      此步驟可讓您將路線匯出為 XML 至本機檔案位置。 藉由將路線匯出至本機檔案位置,而不是匯出至路線資料庫,即可使用 ESB 測試用戶端應用程式來測試路線。 您稍後將在本操作說明主題中完成此程式。

定義路線的結構

  1. 從 [工具箱] 中,將 On-Ramp 模型專案拖曳至設計介面。 在OnRamp1屬性視窗中,設定下列屬性:

    1. 按一下 [名稱] 屬性,然後輸入 ReceiveNAOrder

    2. 在 [ 擴充器 ] 下拉式清單中,按一下 [ On-Ramp ESB 擴充器]。

    3. [BizTalk 應用程式 ] 下拉式清單中,按一下 [Microsoft.Practices.ESB]。

    4. 在 [ 接收埠 ] 下拉式清單中,按一下 [OnRamp.行程]。

  2. 從 [工具箱] 中,將 [路線服務 模型] 元素拖曳至設計介面。 在ItineraryService1屬性視窗中,設定下列屬性:

    1. 按一下 [名稱] 屬性,然後輸入 CategoryRoute

    2. 在 [ 路線服務擴充器 ] 下拉式清單中,按一下 [ 傳訊擴充器]。

    3. 在 [ 容器 ] 下拉式清單中,展開 [ReceiveNAOrder],然後按一下 [ 接收處理常式]。

    4. 在 [ 服務名稱] 下拉式清單中,按一下 [Microsoft.Practices.ESB.Services.Routing]

  3. 以滑鼠右鍵按一下CategoryRoute模型專案的Resolver集合,然後按一下 [新增解析程式]。 在Resolver1屬性視窗中,設定下列屬性:

    1. 按一下 [名稱] 屬性,然後輸入 CategorySearch

    2. 在 [ 解析程式實作 ] 下拉式清單中,按一下 [Uddi3 解析程式延伸模組]。

    3. [解析程式 Moniker ] 下拉式清單中,按一下 [UDDI3]。

    4. 按一下 [類別搜尋 ] 屬性,然後按一下省略號按鈕 (...) 。

    5. 在 [ 名稱值屬性編輯器] 對話方塊中,按一下 [ 新增]。

    6. 按一下 [名稱] 屬性,然後輸入 uddi:esb:biztalkapplication

    7. 按一下 [值] 屬性,然後輸入 GlobalBank.ESB

    8. 在 [ 名稱值屬性編輯器] 對話方塊中,按一下 [ 新增]。

    9. 按一下 [名稱] 屬性,然後輸入 uddi:esb:portname

    10. 按一下 [值] 屬性,然後輸入 OrderFileServicev3

    11. 在 [ 名稱值屬性編輯器] 對話方塊中,按一下 [ 新增]。

    12. 按一下 [名稱] 屬性,然後輸入 uddi:esb:version

    13. 按一下 [值] 屬性,然後輸入 1

    14. 按一下 [確定 ] 關閉 [ 名稱值屬性編輯器 ] 對話方塊。

  4. 以滑鼠右鍵按一下 CategorySearch 解析程式,然後按一下 [ 測試解析程式組態]。

    注意

    確認 [輸出] 視窗中顯示的輸出。

  5. 在 [工具箱] 中,按一下 [連接器]。 將 連線從 ReceiveNAOrder 模型專案拖曳至 CategoryRoute 模型專案。

  6. 從 [工具箱] 中,將 Off-Ramp 模型專案拖曳至設計介面,然後將它放在 CategoryRoute 模型元素的右邊。 在OffRamp1屬性視窗中,設定下列屬性:

    1. 按一下 [名稱] 屬性,然後輸入 SendNAOrder

    2. 在 [ 擴充器] 下拉式清單中,按一下 [ 下拉式 ESB 擴充器]。

    3. [BizTalk 應用程式 ] 下拉式清單中,按一下 [GlobalBank.ESB]。

    4. 在 [ 傳送埠 ] 下拉式清單中,按一下 [DynamicResolutionOneWay]。

  7. 從 [工具箱] 中,將 [路線服務 ] 模型專案拖曳至設計介面,然後將它放在 CategoryRoute 模型元素與 SendNAOrder 模型元素之間。 在ItineraryService1屬性視窗中,設定下列屬性:

    1. 按一下 [名稱] 屬性,然後輸入 SendPortFilter

    2. 在 [ 路線服務擴充器 ] 下拉式清單中,按一下 [ 下拉式擴充器]。

    3. 在 [ 關閉坡形 ] 下拉式清單中,展開 [SendNAOrder],然後按一下 [ 傳送處理常式]。

  8. 在 [工具箱] 中,按一下 [連接器]。 將 連線從 CategoryRoute 模型專案拖曳至 SendPortFilter 模型專案。

  9. 在 [工具箱] 中,按一下 [連接器]。 將 連線從 SendPortFilter 模型專案拖曳至 SendNAOrder 模型專案。

匯出模型以搭配路線測試用戶端使用

  1. 在 Visual Studio 中,以滑鼠右鍵按一下 UDDI3CategorySearch 路線的設計介面,然後按一下 [ 匯出模型]。

    注意

    路線的 XML 版本會在 Visual Studio 中開啟。

  2. 儲存所有專案成品。

  3. 在 Windows 檔案總管中,流覽至 C:\HowTos\行程,並注意建立您的路線 XML (UDDI3CategorySearch.xml) 。

測試路線

  1. 使用開發 活動的必要條件 (C:\HowTos\ESB.Itinerary.Test.exe - 快捷方式) 期間建立的快捷方式,開啟 [路線測試用戶端應用程式] 範例應用程式。

  2. 在 [路線測試用戶端] 中,清除 [ 使用 WCF 服務 ] 核取方塊,然後按一下 [ 載入路線]。

  3. 在 [ 開啟路線檔案 ] 對話方塊中,流覽至 C:\HowTos\行程。 選取 [UDDI3CategorySearch.xml],然後按一下 [ 開啟 ] 以載入路線。

  4. 按一下 [確定 ] 清除 [ 成功載入路線] 訊息。

  5. 在 [路線測試用戶端] 中,按一下 [ 載入消息 ] 方塊旁的省略號按鈕 (...) 。

  6. 在 [ 選取要載入的 XML 檔 ] 對話方塊中,流覽至 C:\HowTos。 選取 [NAOrderDoc.xml],然後按一下 [ 開啟 ] 以載入測試訊息。

  7. 按一下 [ 提交要求] 按鈕。 測試完成時,按一下 [ 確定 ] 以關閉出現的確認。

  8. 在 Windows 檔案總管中,流覽至 C:\Projects\Microsoft.Practices.ESB\Source\Samples\DynamicResolution\Test\Filedrop\Out ,並確認 %MessageID%.xml 訊息已寫入目錄。

其他資源

如需詳細資訊,請參閱下列相關主題: