次の方法で共有


AS2 経由での送信非 EDI メッセージの送信側の処理

BizTalk Server付属の AS2 パイプラインを使用して、AS2 トランスポート経由で EDI メッセージまたは非 EDI メッセージを処理できます。 この 2 つの種類のペイロードで使用されるパイプラインは異なります。 AS2 経由の送信 EDI メッセージの処理には、AS2EdiSend 送信パイプラインを使用し、関連する MDN (有効になっている場合) の受信には AS2Receive パイプラインを使用します。 AS2 経由の送信非 EDI メッセージの処理には、AS2Send 送信パイプラインを使用し、関連する MDN (有効になっている場合) の受信には AS2Receive パイプラインを使用します。 非 EDI メッセージは、任意のバイナリ ペイロードです。

AS2Send 送信パイプラインは、非 EDI ペイロードをアセンブルし、AS2 メッセージをエンコードします。 AS2Receive 受信パイプラインは、MDN 応答をデコードします。 これらのパイプラインは、双方向の送信請求 - 応答の HTTP 送信ポート (MDN が同期の場合) か、一方向の HTTP 送信ポートと一方向の HTTP 受信ポート (MDN が非同期の場合) に含めることができます。

AS2 経由で EDI インターチェンジを送信するために、BizTalk Server は次の手順を実行します。

  • 非 EDI ペイロードを送信するための処理

  • AS2 メッセージの送信

  • 返された MDN の受信

送信用の非 EDI ペイロードの処理

AS2 メッセージを作成する前に、送信ポートは、メッセージをサブスクライブするための適切なフィルター式を使用して非 EDI ペイロードを取得する必要があります。 MDN が同期型か非同期型かに応じて、双方向または一方向の送信ポートを使用できます。 次に、AS2Send パイプラインは、非 EDI ペイロードを処理して AS2 メッセージを作成します。

AS2 メッセージの送信

AS2 送信パイプラインの AS2 エンコーダーは、最初にアグリーメントの解決を実行して、送信メッセージの処理に使用するアグリーメントのプロパティを特定します。 詳細については、「 送信 AS2 メッセージの契約解決」を参照してください。

AS2 エンコーダーは、AS2 メッセージを送信するために必要な一連の HTTP ヘッダーを構築します。 これらのヘッダーは、ヘッダー値の HTTP.UserHttpHeaders 単一の文字列である context プロパティに追加されます。 AS2 エンコーダーは、次の AS2 ヘッダーを HTTP.UserHttpHeaders 内に構築します。 AS2 メッセージには、これらのヘッダーが含まれている必要があります。

  • AS2-To

  • AS2-From

  • AS2-Version

  • MessageID

  • OriginalMessageID (MDN のみ)

    要求 MDN プロパティがオンの場合、パイプラインはメッセージ内の Disposition-Notification-To、Receipt-Delivery-Option、Signed-Receipt-MICalg AS2 ヘッダーを、対応するプロパティの値に設定します。[署名済み MDN の要求] プロパティがオンになっている場合は、Signed-Receipt-Protocol AS2 ヘッダーが "pcks7-signature" に設定されます。

    コンテキスト プロパティが HTTP.UserHttpHeaders 存在しない場合、AS2 エンコーダーによって作成されます。 既に存在する場合 HTTP.UserHttpHeaders 、AS2 エンコーダーは作成するのではなく、それを使用します。 を作成 HTTP.UserHttpHeadersしてヘッダーを書き込み、メッセージのコンテキストに書き込む場合、AS2 エンコーダーはこれらのヘッダーを使用し、他のソースからのヘッダーよりも優先されます。 ただし、AS2-From ヘッダーは例外で、常にアグリーメントのプロパティから取得されます。

    AS2 ヘッダーが に HTTP.UserHttpHeaders含まれていない場合、AS2 エンコーダーは単一のコンテキスト プロパティから追加します。 つまり、AS2 ヘッダーは、メッセージのコンテキストに昇格または書き込むことで追加できます (まだ に HTTP.UserHttpHeaders存在しない場合)。 AS2 ヘッダーが でもなく、コンテキスト内 HTTP.UserHttpHeadersのプロパティとして存在しない場合、AS2 エンコーダーは契約プロパティから に HTTP.UserHttpHeaders追加します。

    AS2 Encoder は、 プロパティにヘッダーを HTTP.UserHttpHeaders ビルドした後、メッセージのコンテキストに書き込みます。 HTTP アダプターは を取得 HTTP.UserHttpHeadersし、 の HTTP.UserHttpHeaders ヘッダー値をメッセージの先頭に付加します。

Note

AS2 トランスポートは、HTTP アダプターと共に使用することだけが想定されています。 ただし、適切なコンテキスト プロパティを手動で設定すると、FILE アダプターを使用して AS2 メッセージを送信できます。 詳細については、「 FILE 送信ポートを介した AS2 メッセージの送信」を参照してください。

返された MDN の処理

MDN が有効になっている場合、双方向送信ポートに関連付けられた受信パイプラインは、AS2 メッセージの受信側パーティから MDN を受信します。

Note

AS2 送信パイプラインが受信 MDN に対して実行する処理の詳細については、「 送信 MDN の送信」を参照してください。

参照

BizTalk Server が AS2 メッセージを送信する方法