ワイヤーされていない EIS データ・バインディング・インポートを使用し、エンドポイントと属性のオーバーライドによってエンドポイントの動的起動を有効にする方法について説明します。
WebSphere® Integration Developer を使用して、動的エンドポイントが設定されたメディエーション・モジュールを作成します。
epr = EndpointReferenceFactory.INSTANCE.createEndpointReference(); epr.setAddress(uri); epr.setBindingType(bindingType); epr.setImport("Import1"); Service dynamicService = (Service) ServiceManager.INSTANCE.getService(refname, epr);エンドポイント参照にバインディング・タイプ属性を追加して、正しいエンドポイント・タイプを指定します。
動的エンドポイントを生成する接続ファクトリーの JNDI は、作成された SCA エンドポイント参照内に格納されます。 この SCA エンドポイント参照は、SCA メッセージのエンドポイント参照内に格納されます。 SCA メッセージを受信すると、EIS インポート・ハンドラーはメッセージのエンドポイント参照を識別し、その情報に基づいて、ターゲット・アドレスを生成する接続ファクトリーの JNDI を検出します。 EIS バインディングはこの接続ファクトリーを使用して、動的エンドポイントのターゲット・アドレスを取得します。 ターゲット・アドレスが見つかった場合、メッセージはそのアドレスに送信されます。 ターゲット・アドレスが見つからなかった場合、メッセージは元のエンドポイントに送信されます。
有効な JCA URI の例を次に示します。
jca:jndi:dynamicTestJNDIUnwired
この URI を指定すると、EIS インポート・ハンドラーは、JNDI で dynamicTestJNDIUnwired として定義されている接続ファクトリーを探します。
接続ファクトリー、新しい対話仕様、新しい接続仕様のそれぞれの JNDI 名で POJO を起動すると、JDBC アダプターの動的起動が実行されます。 起動された POJO は、エンドポイント情報と接続属性をメッセージから抽出します。 さらに POJO は、インポートにワイヤーされている参照と SCA EPR API を使用してリモート・サービスを起動します。 対話仕様と接続仕様の情報が EPR プロパティー・テーブルに保存されます。この情報は、後から再利用することができます。 応答フローから POJO に応答が返されます。
JDBC の代わりに、CICS、IMS、SAP のアダプターも使用することができます。 インポートに接続する各アダプターは、同じ portType になっている必要があります。 例えば、メディエーション・モジュール 2 で JDBC を使用している場合にメディエーション・モジュール 3 で CICS を使用すると、エラーになります。
片方向の起動メッセージは、両方向の起動メッセージと同じように機能しますが、応答メッセージは返しません。