ページの先頭行へ戻る
Interstage Service Integrator V9.5.0 アプリケーション開発ガイド
FUJITSU Software

4.2.2 リソースアダプタの開発

アウトバウンドサービスのカスタムアダプタは、J2EE Connection Architecture 1.0のManaged対応のリソースアダプタとして開発します。
J2EE Connection Architecture 1.0の詳細は、Oracle Corporationから提供されているドキュメントを参照してください。

ここでは、処理の流れとデータの受け渡しについて説明します。実装が必要なJ2EE Connection Architecture標準インタフェースについては、“実装する必要のあるJ2EE Connection Architecture標準インタフェース”を参照してください。

処理の流れ

アウトバウンド側ISI接続FWがアウトバウンドアダプタを呼び出す手順は、J2EE Connection Architectureで定められた呼び出し手順に従います。

以下にISIサーバ起動とメッセージ処理の各タイミングで行う処理の流れを示します。

ISIサーバ起動時
  1. コネクションファクトリの取得

    サービスエンドポイント定義に定義されているJNDI名を使用してコネクションファクトリを取得します。複数のサービスエンドポイント定義に同じJNDI名が定義されている場合、JNDI名ごとに1度だけコネクションファクトリの取得が行われます。

メッセージ処理時
  1. コネクションの取得

    ISIサーバ起動時に取得したコネクションファクトリのgetConnectionメソッドを使用してコネクションを取得します。

  2. サービス提供側アプリケーションの呼び出し

    Interactionオブジェクトのexecuteメソッドを実行します。
    executeメソッドの引数としてRecordが渡されます。Recordで渡される情報については、”入出力Record”を参照してください。

  3. コネクションのクローズ

    1で取得したコネクションのcloseメソッドを使用してコネクションをクローズします。

データの受け渡し

ISIサーバからアウトバウンドサービスのカスタムアダプタに受け渡される情報は以下のとおりです。

実装する必要のあるJ2EE Connection Architectureインタフェース

アウトバウンドサービスのリソースアダプタで実装する必要のあるJ2EE Connection Architecture標準インタフェースは以下のとおりです。

ここでは、アウトバウンドサービスのリソースアダプタで利用するCCIインタフェースについてだけ記載しています。

表4.1 実装する必要のあるJ2EE Connection Architecture 標準インタフェース

J2EE Connection Architecture規定のインタフェース

アウトバウンドアダプタでの実装

○:必須
△:任意
×:不要※

※ISIから使用しないインタフェースのため実装は不要です。

概要

Connection

EISインスタンスへの物理接続にアクセスするためのアプリケーションレベルのハンドルです。

ConnectionFactory

Connectionを取得するためのインタフェースを提供します。

ConnectionMetaData

×

Connectionを通じて接続されるEIS インスタンスに関するメタ情報を提供します。

ConnectionSpec


EISインスタンスへアクセスするために必要な情報がある場合は実装してください。

EISインスタンスへアクセスするためのConnectionSpecを保持します。

IndexedRecord


IndexedRecordまたはMappedRecordの少なくとも一方を実装してください。

java.util.Listインタフェースに基づいて順序付けられたレコード要素の集合を表します。

Interaction

EISインスタンスとの相互作用を実行するためのインタフェースです。

InteractionSpec

EISインスタンスとの相互作用を実行するためのプロパティを保持します。

LocalTransaction

×

アプリケーションレベルのローカルトランザクションの制御に使用します。

MappedRecord


IndexedRecordまたはMappedRecordの少なくとも一方を実装してください。

キーと値のマップをベースにした、レコード要素の表現に使用します。

MessageListener

×

要求/応答形式のMDBを実装するためのインタフェースです。

Record

Recordを継承するIndexedRecordまたはMappedRecordを実装してください。

Interaction内で定義される実行メソッドへの入力または出力表現の基本インタフェースです。

RecordFactory

MappedRecord および IndexedRecord インスタンスを作成するために使用します。

ResourceAdapterMetaData

×

リソースアダプタに関するメタ情報を表します。

ResultSet

×

EISインスタンスとの相互作用の実行により取得される表形式のRecordを表します。

ResultSetInfo

×

ResultSetの機能サポートに関する情報を提供します。

Streamable

×

Recordからバイトストリームとして値を取得したり、出力Recordにバイトストリームで値を設定したりするために使用します。