次の方法で共有


ファイル アダプター (BizTalk Server サンプル)

ファイル アダプターのサンプルは、Microsoft BizTalk Server を操作するために Microsoft Visual C# .NET で記述されています。 動的アダプターまたは静的アダプターをビルドするコードを提供します。 ただし、次の手順では、静的アダプターの概要のみを示します。 静的アダプターは、静的なスキーマ セットを持ち、カスタム ユーザー インターフェイスを持たないアダプターです。 動的アダプターにはカスタム ユーザー インターフェイスがあり、スキーマの動的なセットである可能性があります。 静的アダプターと動的アダプターの両方で、アダプターの追加ウィザードを使用してスキーマを BizTalk プロジェクトに追加します。

ファイル アダプターのサンプルは、BizTalk Server に付属しているネイティブ FILE アダプターと同じではありません。 したがって、このサンプルを使用してトランスポートの種類を選択する場合は、FILE の代わりに "static" を選択します。

カスタム ユーザー インターフェイスとスキーマの動的なセットを持つ動的アダプターには、アダプター管理側で追加のコードが必要になります。 動的なスキーマ セットの使用方法を理解するには、「 動的 Design-Time アダプターの構成」を参照してください。

このサンプルの役割

サンプル アダプターは、ファイル フォルダーからファイルをコピーし、メッセージとして BizTalk に送信するか、BizTalk Server からメッセージを受け取ってファイル フォルダーにドロップします。 動的アダプターまたは静的アダプターをビルドするコードを提供します。ただし、次の手順では静的アダプターの概要のみを示します。 静的アダプターは、静的なスキーマ セットを持ち、カスタム ユーザー インターフェイスを持たないアダプターです。 動的アダプターにはカスタム ユーザー インターフェイスがあり、スキーマの動的なセットである可能性があります。 静的アダプターと動的アダプターの両方で、アダプターの追加ウィザードを使用してスキーマを BizTalk プロジェクトに追加します。

サンプル ファイル アダプターは、他のカスタム アダプターを作成するテンプレートとして使用できます。

このサンプルを検索する場所

< サンプル パス>\AdaptersDevelopment\File Adapter

< Samples パス>の既定の場所は32 ビット バージョンの Windows を実行しているコンピューターに BizTalk Server がインストールされている場合、\Microsoft BizTalk Server\SDK\Samples%ProgramFiles%です。 < サンプル パス>の既定の場所は、64 ビット バージョンの Windows を実行しているコンピューターに BizTalk Server がインストールされている場合に、\Microsoft BizTalk Server\SDK\Samples%%ProgramFiles (x86) です。 %ProgramFiles% または %ProgramFiles(x86)% 環境変数に関連付けられている値を確認するには、コマンド プロンプトでエコー %ProgramFiles% またはエコー %ProgramFiles(x86)% を入力し、Enter キーを押します。 このサンプルを 64 ビット オペレーティング システムで実行する場合は、.reg ファイルを実行する前に、.reg ファイル内のすべての参照を %ProgramFiles% から %ProgramFiles(x86)% に変更する必要があります。

次の表に、このサンプルのファイルとその目的を示します。

\File Adapter ファイル 説明
\BizTalk プロジェクト ファイル サンプル アダプターのテストに使用されるアダプター ハーネス プロジェクトが含まれています。
\デザイン時ファイル デザイン時と管理プロジェクト (AdapterManagement.csproj) を格納します。
\ランタイム ファイル 実行時のファイル コピーの受信および送信プロジェクト (DotNetFile.csproj) を格納します。
DynamicAdapterManagement.reg サンプルの動的アダプターを登録します。
Instance.xml ファイル アダプターを通過するサンプル ファイル。
StaticAdapterManagement.reg サンプルの静的アダプターを登録します。
\BizTalk Project\アダプターハーネス ファイル 説明
AdapterHarness.odx、AdapterHarness.sln、AdapterHarnessProject.btproj BizTalk プロジェクトのプロジェクト、ソリューション、および関連ファイルを提供します。
mySchema.xsd アダプターの受信部分からのハーネス オーケストレーションによって予期される Instance.xml スキーマと、オーケストレーションによってアダプターの送信部分に渡される Instance.xml のスキーマを提供します。
\Design Time\Adapter Management ファイル 説明
AdapterManagement.cs、AdapterManagement.csproj、AdapterManagement.sln プロジェクト、ソリューション、およびアダプターのデザイン時の関連ファイル。
AssemblyInfo.cs このサンプルのアセンブリ情報が含まれています。
CategorySchema2.xml サンプル アダプターでは使用されません。
CategorySchema.xml 静的アダプターのサービス組織ツリーが含まれています。
DotNetFileResource.resx リソースが含まれています。
ReceiveHandler.xsd、ReceiveLocation.xsd 受信側ハンドラーとエンドポイントのカスタム プロパティ スキーマが含まれています
service1.wsdl アダプターの操作定義が含まれています。
TransmitHandler.xsd、TransmitLocation.xsd 送信側ハンドラーとエンドポイントのカスタム プロパティ スキーマが含まれています
\ランタイム ファイル 説明
DotNetFile.csproj、DotNetFile.sln、

AssemblyInfo.cs、

DotNetFileExceptions.cs、DotNetFileProperties.cs、DotNetFileReceiver.cs、DotNetFileReceiverEndPoint.cs、DotNetFileTransmitter.cs、

DotNetFileTransmitterEndpoint.cs、

DotNetFileAsyncTransmitterBatch.cs、

BatchMessage.cs
実行時にファイルの送受信を行うアダプター用のファイル。 これらのファイルは、カスタム コンポーネントの新しい名前で変更および保存できます。

DotNetFile.csproj とDotNetFile.slnは、プロジェクト ファイルとソリューション ファイルです。

AssemblyInfo.csには、このサンプルのアセンブリ情報が含まれています。

DotNetFileReceiver.cs受信場所からファイルを読み取り、BizTalk Server に送信します。

DotNetFileExceptions.cs、メッセージ処理中に例外を処理するコードを実装します

DotNetFileProperties.cs、受信操作と送信操作の両方の共通プロパティが含まれています

BatchMessage.cs、バッチ メッセージングを実装します。

DotNetFileReceiverEndPoint.csは、受信場所/URI に対応するクラスです。 指定されたフォルダーをポーリングして新しいメッセージを処理します。

DotNetFileTransmitter.csは、DotNetFile 送信アダプターのシングルトン クラスです。 このアダプターの種類のさまざまな送信ポートに移動するすべてのメッセージは、このクラスを通過します

DotNetFileTransmitterEndpoint.cs、メッセージの送信を処理します。
\SDK\Samples\AdaptersDevelopment\BaseAdapter\v1.0.2 のファイル 説明
Adapter.cs、AdapterException.cs、AsyncTransmitter.cs、batch.cs、ConfigProperties.cs、ControlledTermination.cs、IManageEndpoints.cs、Receiver.cs、ReceiverEndpoint.cs 基本アダプターを構成するクラスを提供します。 これらを使用して、独自のアダプターを作成できます。

このサンプルを使用する方法

サンプル ファイル アダプターは、他のカスタム アダプターを作成するテンプレートとして使用します。

このサンプルのビルド

Von Bedeutung

BizTalk インストールが 64 ビットであるか、インストール場所が変更されている場合は、OutboundAssemblyPath、InboundAssemblyPath、AdapterMgmtAssemblyPath を適宜変更する必要があります。

ファイル アダプターサンプルをビルドして初期化するには、次の手順に従います。

DotNetFileAdapter プロジェクトと基本アダプター プロジェクトの厳密な名前キーを作成するには

  1. Visual Studio コマンド プロンプトを起動します。

    管理者としてコマンド プロンプトを実行します。

  2. 現在のディレクトリを <Samples Path>\AdaptersDevelopment\BaseAdapter\v1.0.2 ディレクトリに変更します。

  3. コマンド プロンプトで、「 sn –k BaseAdapter.snk 」と入力し、Enter キーを押します。 この .snk ファイルは、他のサンプルが以前に実行された結果として既に存在している可能性があります。 その場合は、手順 4 に進み、この手順をスキップできます。

  4. 現在のディレクトリを <Samples Path>\AdaptersDevelopment\File Adapter\Runtime ディレクトリに 変更します。

  5. コマンド プロンプトで、「 sn –k DotNetFileAdapter.snk 」と入力し、Enter キーを押します。

  6. コマンド プロンプトで「 exit 」と入力し、Enter キーを押してコマンド プロンプト ウィンドウを閉じます。

受信側のランタイム プロジェクトをビルドするには

  1. [ スタート] をクリックし、[ すべてのプログラム] をポイントし、[ アクセサリ] をポイントして、[ エクスプローラー] をクリックします。

  2. < Samples Path>"\AdaptersDevelopment\File Adapter\Runtime" ディレクトリに移動し、DotNetFile.slnダブルクリックします。

  3. アダプター レシーバーランタイム プロジェクトをリビルドするには、ソリューション エクスプローラーで DotNetFile を右クリックし、[ リビルド] をクリックします。

  4. [ ファイル ] メニューの [ 終了 ] をクリックして Visual Studio を閉じます。

アダプターのデザイン時のプロジェクトをビルドするには

  1. Windows エクスプローラーで、 <Samples Path>"\AdaptersDevelopment\File Adapter\Design Time\Adapter Management" ディレクトリに移動し、 AdapterManagement.slnをダブルクリックします。

  2. ソリューション エクスプローラーで、[ AdapterManagement] を右クリックし、[ リビルド] をクリックします。

  3. [ ファイル ] メニューの [ 終了 ] をクリックして Visual Studio を閉じます。

サンプルの静的アダプターを登録するには

  1. Windows エクスプローラーで、 <Samples Path>"\AdaptersDevelopment\File Adapter" ディレクトリに 移動します。

  2. サンプル アダプターをレジストリに追加するには、 StaticAdapterManagement.regをダブルクリックします。

    StaticAdapterManagement.regには、C:\Program Files\Microsoft BizTalk Server\ へのハードコーディングされたパスが含まれています。 BizTalk Server を %ProgramFiles%\Microsoft BizTalk Server\ ディレクトリにインストールしなかった場合、BizTalk Server インストールを BizTalk Server 2009 または BizTalk Server 2006 R2 からアップグレードした場合、または 64 ビット 版の Windows を実行しているコンピューターに BizTalk Server をインストールした場合は、適切なパスでファイル StaticAdapterManagement.regを変更する必要があります。 既定では、BizTalk Server は、64 ビット バージョンの Windows を実行しているコンピューターの %ProgramFiles(x86)%\Microsoft BizTalk Server\ ディレクトリにインストールされます。 "InboundAssemblyPath"、"OutboundAssemblyPath"、および "AdapterMgmtAssemblyPath" の値に関連付けられているパスを、指定したファイルの正しい場所を指すよう更新します。

    Von Bedeutung

    BizTalk を 64 ビット コンピューターにインストールする場合は、HKEY_CLASSES_ROOT\CLSID\ レジストリ エントリのすべてのインスタンスを、StaticAdapterManagement.reg レジストリ ファイル内の HKEY_CLASSES_ROOT\Wow6432Node\CLSID\ に変更します。

  3. [ レジストリ エディター ] ダイアログ ボックスで、[ はい ] をクリックしてサンプル アダプターをレジストリに追加し、[OK] をクリック します

  4. エクスプローラーを閉じるには、[ ファイル ] メニューの [ 閉じる] をクリックします。

サンプルの静的アダプターをインストールするには

  1. [ スタート] をクリックし、[ すべてのプログラム] を選択し、[ Microsoft BizTalk Server 20xx] を選択して、[ BizTalk Server 管理] を選択します。

  2. BizTalk Server 管理コンソールで、[ BizTalk Server 管理] をクリックして展開し、[ BizTalk グループ] をクリックして展開し、[ プラットフォームの設定] をクリックして展開します。

  3. [ アダプター] を右クリックし、[ 新規] をクリックし、[ アダプター] をクリックします。

  4. [ アダプターの追加 ] ダイアログ ボックスで、次の操作を行います。

    これを使用する 目的
    名前 「静的」と入力します。
    アダプタ ドロップダウン リストから [Static DotNetFile ] を選択します。
    コメント 「サンプル アダプター」と入力します
  5. OK をクリックします。

    BizTalk 管理コンソールの右側のウィンドウに、静的アダプターがアダプターの一覧に表示されるようになりました。

ホスト インスタンスを停止して再起動するには

  1. [ スタート] をクリックし、[ すべてのプログラム] を選択し、[ Microsoft BizTalk Server 20xx] を選択して、[ BizTalk Server 管理] を選択します。

  2. BizTalk Server 管理コンソールで、BizTalk Server の管理を展開し、BizTalk グループを展開し、プラットフォーム設定を展開してから、ホスト インスタンスをクリックします。 右側のウィンドウで BizTalkServerApplication を選択します。

  3. 結果ウィンドウで、ホスト インスタンス (通常はコンピューター名) を右クリックし、[ 再起動] をクリックします。

このサンプルの実行

ファイル アダプターのサンプルを実行するには
  1. [ スタート] をクリックし、[ すべてのプログラム] をポイントし、[ アクセサリ] をポイントして、[ エクスプローラー] をクリックします。

  2. BizTalk Server インストール ドライブに次のフォルダーを作成します。

    • <drive>:\Temp

    • <drive>:\Temp\Send

    • <drive>:\Temp\Receive

  3. エクスプローラーを閉じるには、[ ファイル ] メニューの [ 閉じる] をクリックします。

  4. [ スタート] をクリックし、[ すべてのプログラム] をポイントし、 Microsoft BizTalk Server 20xx をポイントして、[ BizTalk Server 管理] をクリックします。

  5. BizTalk Server 管理ノードを右クリックし、[既存のグループに接続] を選択します。

  6. [ 既存の BizTalk Server 構成データベースへの接続 ] ダイアログ ボックスで、次の操作を行います。

    BizTalk 管理データベースは、BizTalk 構成データベースとも呼ばれます。

    これを使用する 目的
    SQL Server 「. (ピリオド)」と入力します。
    データベース 構成ウィザードによって作成された BizTalk 管理データベースの名前を選択します。 構成ウィザードで使用される既定のデータベース名は BizTalkMgmtDb です
  7. OK をクリックします。

  8. BizTalk Server 管理コンソールで BizTalk グループ[サーバー名] ノードを展開し、[ アプリケーション ] ノードを展開し、 BizTalk アプリケーション 1 ノードを展開します。

  9. [送信ポート] ノードを右クリックし、[新規] をクリックし、[静的 One-Way 送信ポート] を選択し、[OK] をクリックします。

  10. [ 送信ポートのプロパティ ] ダイアログ ボックスで、[ 全般] を選択し、次の操作を行います。

    これを使用する 目的
    名前 「AdapterSend」と入力します。
    トランスポートの種類 ドロップダウン リストから [ 静的 ] を選択し、[ 構成] をクリックします。

    - [ ディレクトリ ] ボックスに、「 <drive>:\Temp\Send」と入力します。
    - [ ファイル モード ] ボックスで、[ 新規作成] を選択します。
    - [ ファイル名] ボックスに「 %MessageID%.xml」と入力します。
    - [ OK] をクリックします
    - URI フィールドには、<drive>:\Temp\Send\%MessageID%.xmlが表示されます。
    送信パイプライン PassThruTransmit (Microsoft.BizTalk.DefaultPipelines.PassThruTransmit) を選択し、[OK] をクリックします
  11. BizTalk アプリケーション 1 ノードで、[受信ポート] をクリックし、[新規/ One-Way 受信ポート] を選択します。

  12. [ 新しい受信ポートの作成 ] ダイアログ ボックス の [受信ポートの種類の指定 ] ボックスで、ドロップダウン リストから [一方向の受信ポート ] を選択し、[OK] をクリック します

  13. [ 受信ポートのプロパティ ] ダイアログ ボックスの [名前 ] ボックスに「 AdapterReceive」と入力し、[OK] をクリック します

  14. BizTalk アプリケーション 1 ノードで受信場所を右クリックし、新規/一方向の受信場所を選択します。

  15. [ 受信ポートの選択 ] ダイアログで、[ AdapterReceive ] を選択し、[OK] をクリック します

  16. [ 受信場所のプロパティ ] ダイアログ ボックスで、次の操作を行います。

    これを使用する 目的
    名前 AdapterReceiveLocation
    トランスポートの種類 ドロップダウン リストから [静的 ] を選択し、[ 構成] をクリックしてこれらの残りのプロパティにアクセスします。
    URI - 省略記号ボタン (...) をクリックします。
    - [ バッチ内のファイル数 ] ボックスに「 20」と入力します。
    - [ ディレクトリ ] ボックスに、「 <drive>:\Temp\Receive」と入力します。
    - File Mask プロパティが *.xmlに設定されていることを確認します。
    - [ ポーリング間隔 ] ボックスに「 5」と入力し、[OK] をクリック します
    - URI ラベルに <drive>:\Temp\Receive\*.xmlが含まれていることを確認します。
    受信ハンドラー ドロップダウン リストから BizTalkServerApplication を選択します。
    受信パイプライン ドロップダウン リストから [XMLReceive ] を選択します。
  17. OK をクリックします。

    サンプル アダプターのビルド、展開、バインドに進みます。

サンプル アダプターのビルド、配置、バインド

アダプターが稼働する前に、プロジェクトをビルドし、オーケストレーションをポートにバインドして、アダプターを参加させる必要があります。

静的アダプターの厳密な名前キーを作成するには
  1. Visual Studio コマンド プロンプトを起動します。

  2. コマンド プロンプトで、現在のディレクトリを <Samples Path>\AdaptersDevelopment\File Adapter\BizTalk Project\Adapter Harness ディレクトリに変更します。

  3. コマンド プロンプトで、「 sn –k AdapterHarness.snk」と入力し、ENTER キーを押します。

  4. OK をクリックします。

アダプター ハーネス プロジェクトをビルドするには
  • ソリューション エクスプローラーで、[ AdapterHarnessProject] を右クリックし、[ リビルド] をクリックします。
アダプター ハーネス プロジェクトを展開するには
  1. ソリューション エクスプローラーで、プロジェクトが再構築されたら、 AdapterHarnessProject を右クリックし、[ 配置] をクリックします。

  2. BizTalk Server 管理コンソールで、展開したプロジェクトを選択し、更新 をクリックします。

オーケストレーションをポートにバインドするには
  1. BizTalk Server 管理コンソールで、適切な BizTalk Server アプリケーションの下にある [オーケストレーション ] ノードを展開します。

  2. AdapterHarness.AdapterHarnessType を右クリックし、[バインド] をクリックします。

  3. [ ポート バインドのプロパティ - AdapterHarness.AdapterHarnessType- バインド構成 ] ダイアログ ボックスで、次の操作を行います。

    これを使用する 目的
    アダプタファイル受信ポート ドロップダウン リストから AdapterReceive を選択します。
    AdapterFileSendPort ドロップダウン リストから AdapterSend を選択します。
  4. 左側のウィンドウで、[ ホスト] をクリックします。

  5. [ホスト] ボックスで、ドロップダウン リストから BizTalkServerApplication を選択し、[OK] をクリックします

    サンプル アダプターの管理に進みます。

サンプル アダプターの管理

BizTalk 管理コンソールでサンプル アダプターの管理タスクを完了します。

ファイル アダプターのサンプルを管理するには
  1. [ スタート] をクリックし、[ すべてのプログラム] をポイントし、 Microsoft BizTalk Server 20xx をポイントして、[ BizTalk Server 管理] をクリックします。

  2. 左側のウィンドウで、[ アプリケーション] をクリックして展開し、[ BizTalk アプリケーション 1] をクリックして展開し、[ 受信場所] をクリックします。

  3. AdapterReceive の状態が [有効] になっていることを確認します。

    状態が [有効] でない場合は、右側のウィンドウで [AdapterReceive ] を右クリックし、[ 有効] をクリックします。

  4. 左側のウィンドウで、[ オーケストレーション ] をクリックし、 AdapterHarness.AdapterHarnessType参加していることを確認します。 AdapterHarness.AdapterHarnessType を右クリックし、[参加] をクリックします (AdapterHarness.AdapterHarnessType が既に参加している場合、[参加] メニュー オプションは使用できません)。

  5. AdapterHarness.AdapterHarnessType を右クリックし、[開始] を選択します。 このオーケストレーションの状態が [実行中] に変わります。

    サンプル アダプターのテストに進みます。

サンプル アダプターのテスト

サンプル アダプターをデプロイしたら、ホスト インスタンスを停止して再起動する必要があります。 運用環境に配置する前にサンプル アダプターをテストすることが重要です。

ホスト インスタンスを停止して再起動するには
  1. BizTalk Server 管理コンソールで、BizTalk Server の管理を展開するをクリックし、クリックして展開 BizTalk グループをクリックしてプラットフォームの設定を展開し、[ホスト インスタンス] をクリックします。 右側のウィンドウで BizTalkServerApplication を選択します。

  2. ホスト インスタンス (通常はコンピューター名) を右クリックし、[ 停止] をクリックします。

    ホスト インスタンスの状態が [停止済み] に変わります。

  3. ホスト インスタンスを右クリックし、[ 開始] をクリックします。

    ホスト インスタンスの状態が [実行中] に変わります。

サンプルの静的アダプター ランタイムをテストするには
  1. Windows エクスプローラーで、 <Samples Path>\AdaptersDevelopment\File Adapter ディレクトリに移動し、InstanceXML.xml ファイルをクリップボードにコピーします。

  2. <drive>:\Temp\Receive に移動し、Instance.xml ファイルをフォルダーに貼り付けます。

    送受信アダプターが動作している場合、ファイルは <drive>:\Temp\Receive フォルダーから <drive>:\Temp\Send フォルダーに移動する必要があります。

サンプルの静的アダプターの追加ウィザード機能をテストするには
  1. Visual Studio のソリューション エクスプローラーで、 AdapterHarnessProject を右クリックし、[ 追加] をポイントし、[ 生成された項目の追加] をクリックします。

  2. [ 生成された項目の追加 - AdapterHarnessProject ] ダイアログ ボックスで、[ アダプター メタデータの追加] をクリックし、[ 開く] をクリックします。

    登録済みアダプターの一覧が表示されます。

  3. [ Static DotNetFile] を選択し、[ 次へ] をクリックします。

    アダプターによって公開されているサービス組織が表示されます。

  4. [ サービス組織]、[ 医療] の順に展開し、[ 管理] をクリックします。

    適格性が他のノードとは異なる方法で表示されていることに注意してください。 適格性 は、選択できるサービス ノードです。 他のノードは、特定のサービスを記述しない組織ノードです。

  5. [ 適格性 ] ノードを選択し、[ 完了] をクリックします。

    BizTalk は、.odx ファイルと .xsd ファイルをプロジェクトにインポートします。

    BizTalk プロジェクトのスケジュールで、アダプターからインポートされたスキーマ、PortTypes、Operations、および MessageTypes を使用できるようになりました。

このサンプルで使用するクラスまたはメソッド

インターフェイス: IBaseMessage、IPropertyBag、IBTTransportProxy

クラス (基本アダプターから): AsyncTransmitterEndpoint、AsyncTransmitter、BatchMessage、ControlledTermination、ReceiverEndpoint、DotNetFileCommonProperties、BatchOperationType

コメント

サンプル アダプターを完了したら、カスタムの静的または動的アダプターを作成するようにサンプル アダプターを変更できます。詳細については、「 アダプターの Design-Time 構成」を参照してください。

こちらもご覧ください

アダプターのサンプル - 使用法
アダプターの登録