在本教學課程中,您會設定一個解決方案,以透過 HTTP 傳輸接收和傳送 EDIINT/AS2 編碼的訊息。
教學課程解決方案的運作方式
解決方案會執行下列動作:
從合作夥伴 Fabrikam 接收 AS2 訊息
以異步方式將 MDN 回應傳回給夥伴
處理 AS2 訊息的 EDI 承載
透過 AS2 將 997 通知傳回給合作夥伴 (Fabrikam)
將包含EDI訊息承載的 XML 檔案路由傳送至主組織 (Contoso) 的後端應用程式。
備註
此解決方案不會使用簽署或加密來協助確保 AS2 訊息的安全性。
教學課程元件
此解決方案會使用下列項目:
BTS Http 接收 ISAPI 篩選器,以接收寄件者的 AS2/EDI 訊息 (/Contoso/BTSHTTPReceive.dll)。
ASPX 網頁,藉由傳回 997 通知和 MDN (http://localhost/Fabrikam/Default.aspx) 來模擬夥伴。
您將用來部署 864 架構和其他架構的項目檔(Schemas.btproj)。
接收EDI檔案的單向 HTTP 接收位置(Receive_AS2)。 這個接收位置會使用包含 AS2 譯碼器和 EDI 反組譯碼器的預設 AS2EdiReceive 管線。
動態 HTTP 傳送埠,可傳回非同步 MDN (Send_Async_MDN)。 此傳送埠會使用包含 AS2 編碼器的 AS2Send 管線。
靜態單向 FILE 傳送埠,將 XML 檔案中的 EDI 承載路由傳送至後端資料夾 (Send_Payload_EdiXml)。 此傳送埠會使用PassThruTransmit傳送管線。
靜態單向 HTTP 傳送埠,可透過 AS2 將 997 通知傳回給合作夥伴(Send_Async_997)。 此傳送埠會使用包含 AS2 編碼器的 AS2Send 管線,但不需要 EDI 組合器。
您將用來建置應用程式的項目檔,以將 EDI 檔案從 Fabrikam 合作夥伴傳送至 BizTalk(Sender.csproj)。
訊息流程
已完成解決方案中的訊息流程將會如下圖所示:
教學課程元件會處理訊息,如下所示:
您可以使用 sender.exe 應用程式 ,將原始的EDI/AS2 訊息從合作夥伴 Fabrikam 傳送至 BizTalk Server 計算機。 Sender.exe 將 EDI/AS2 訊息傳送至 Contoso 虛擬目錄。
備註
此清單中的事件可能不會依顯示的順序發生。
測試訊息是 X12_00401_864.edi,位於 \Program Files\Microsoft BizTalk Server 20xx\SDK\AS2 教學課程。
Receive_AS2 單向接收位置先從 Fabrikam 接收 EDI 訊息,然後使用 BTSHTTPReceive.dll ISAPI 擴充功能從 Contoso 虛擬目錄中挑選檔案。 接收管線會譯碼 AS2 訊息、拆解 EDI 交換,然後將 XML 訊息放入 MessageBox。
接收管線會針對 AS2 訊息生成 MDN,且由於 MDN 被設定為異步,接收管線會將 MDN 放入 MessageBox。
接收管線會產生 997 通知以回應 EDI 交換,並將 997 投入 MessageBox。
Send_Payload_EdiXml 靜態單向傳送埠會從 MessageBox 挑選 EDI 有效負載,並篩選 BTS.MessageType 內容屬性。
承載傳送埠會將包含 EDI 承載的 XML 檔案傳送至後端 Contoso 應用程式,由 \_EDIXMLToContoso 資料夾表示。 此傳送埠會使用PassThruTransmit傳送管線。
Send_Async_MDN動態傳送埠會從 MessageBox 提取異步 MDN,並依據 EdiIntAS.IsAS2AsynchronousMdn 內容屬性進行篩選。
MDN 傳送埠會將 MDN 傳回至 \_MDNToFabrikam資料夾。 由於這是動態傳送埠,因此它會使用郵件http://localhost/Fabrikam/Default.aspx?Destination=_MDNToFabrikam標頭中 [收據-Delivery-Option 行] 中的位址,將訊息路由傳送至 \_MDNToFabrikam資料夾。
Send_Async_997 傳送埠會從 MessageBox 中挑選 997,並根據 BTS.MessageType 上下文屬性進行篩選。
997 傳送埠會使用 HTTP 傳輸,將 EdiReceive 接收管線所產生的 997 訊息傳送至 \_997ToFabrikam 資料夾。 傳送埠會使用 URI http://localhost/Fabrikam/Default.aspx?Destination=_997ToFabrikam將訊息傳送至 Fabrikam default.aspx 頁面。 接著,default.aspx頁面會將 997 傳送至 \_997ToFabrikam資料夾。
若要執行本教學課程,您應該瞭解下列事項:
BizTalk Server 管線和管線元件
HTTP 配接器
接收端口和位置
傳送埠