ヘッダーをスキップ
Oracle Fusion Middleware Oracle TopLink開発者ガイド
11gリリース1(11.1.1)
B56246-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

104 JMSコーディネート・キャッシュの構成

この章では、JMSコーディネート・キャッシュを使用するために構成する必要がある各種コンポーネントについて説明します。

この章の内容は次のとおりです。

表104-1は、JMSコーディネート・キャッシュの構成可能オプションを示します。

104.1 JMSコーディネート・キャッシュの構成の概要

表104-1は、JMSコーディネート・キャッシュの構成可能オプションを示します。

表104-1 JMSコーディネート・キャッシュの構成可能オプション

構成オプション Oracle JDeveloper
TopLink Workbench Java

ディスクリプタ・レベルでのキャッシュ・コーディネーション変更伝播(119.15項「ディスクリプタ・レベルでのキャッシュ・コーディネーション変更伝播の構成」を参照)

サポートされている
サポートされている
サポートされている

同期変更伝播モード(103.2項「同期変更伝播モードの構成」を参照)

サポートされている
サポートされている
サポートされている

JNDIネーミング・サービス(103.7項「JNDIネーミング・サービス情報の構成」を参照)

サポートされている
サポートされている
サポートされている

トピック名(104.2項「トピック名の構成」を参照)

サポートされている
サポートされている
サポートされている

トピック・コネクション・ファクトリ名(104.3項「トピック・コネクション・ファクトリ名の構成」を参照)

サポートされている
サポートされている
サポートされている

トピック・ホストURL(104.4項「トピック・ホストURLの構成」を参照)

サポートされている
サポートされている
サポートされている

接続処理(104.5項「接続処理の構成」を参照)

サポートされている
サポートされている
サポートされている

コンテキスト・プロパティ(103.11項「コンテキスト・プロパティの構成」を参照)

サポートされている
サポートされている
サポートされている

パケットの有効時間(103.12項「パケットの有効時間の構成」を参照)

サポートされていない


サポートされていない


サポートされている

104.2 トピック名の構成

JMSトピックは、JMSサーバーのパブリッシュ/サブスクライブ先を識別します。メッセージの共有を望むJMSユーザーは、同じJMSトピックをサブスクライブします。

構成するトピック名は、TopLinkでJNDIサービスからのjavax.jms.Topicインスタンスの検索に使用される名前です。jms/<topic_name>のように、完全修飾されたJNDI名を指定する必要があります。

同じJMSコーディネート・キャッシュのすべてのメンバーは、同じJMSトピックを使用する必要があります。

104.2.1 TopLink Workbenchを使用したトピック名の構成方法

JMSキャッシュ・コーディネーションにトピック名を指定するには、次の手順を実行します。

  1. ナビゲータでサーバー・セッションを選択します。そのプロパティがエディタに表示されます。

  2. 「キャッシュ・コーディネーション」タブをクリックします。「キャッシュ・コーディネーション」タブが表示されます。

  3. 「キャッシュ・コーディネーションを有効にする」が選択されており、「タイプ」「JMS」になっていることを確認します(詳細は、102.3項「キャッシュ・コーディネーション」を参照)。

    図104-1 「キャッシュ・コーディネーション」タブ、「トピック名」フィールド、「JMS」

    図104-1の説明が続きます
    「図104-1 「キャッシュ・コーディネーション」タブ、「トピック名」フィールド、「JMS」」の説明

  4. JMSコーディネート・キャッシュでこのセッションに使用するトピック名を入力します。これは、jms/<topic_name>のように、完全修飾されたJNDI名である必要があります。

JMSコーディネート・キャッシュでこのセッションに使用するトピック名を入力します。これは、jms/<topic_name>のように、完全修飾されたJNDI名である必要があります。

104.2.2 Javaを使用したトピック名の構成方法

トランスポート・マネージャの接続先のトピックのトピック名を構成するには、oracle.toplink.remotecommand.broadcast.BroadcastTransportManagerのメソッドsetTopicNameを使用します。

BroadcastTransportManagerを取得するには、次のSession APIを使用します。

Session.getCommandManager().getTransportManager()

104.3 トピック・コネクション・ファクトリ名の構成

JMSトピック・コネクション・ファクトリは、特定のJMS宛先に対してJMSプロバイダとの接続を作成するものです。各コネクション・ファクトリには、JMS宛先への接続を作成するための固有の構成情報を指定します。

構成されたトピック・コネクション・ファクトリ名に基づき、TopLinkは、javax.jms.TopicConnectionFactoryインスタンスをJNDIサービスから検索します。これは、jms/<resource_name>のように、完全修飾されたJNDI名である必要があります。

104.3.1 TopLink Workbenchを使用したトピック・コネクション・ファクトリ名の構成方法

JMSコーディネート・キャッシュにトピック・コネクション・ファクトリを指定するには、次の手順を実行します。

  1. ナビゲータでサーバー・セッションを選択します。そのプロパティがエディタに表示されます。

  2. 「キャッシュ・コーディネーション」タブをクリックします。「キャッシュ・コーディネーション」タブが表示されます。

  3. 「キャッシュ・コーディネーションを有効にする」が選択されており、「タイプ」「JMS」になっていることを確認します(詳細は、102.3項「キャッシュ・コーディネーション」を参照)。

    図104-2 「キャッシュ・コーディネーション」タブ、「トピック・コネクション・ファクトリ名」フィールド

    図104-2の説明が続きます
    「図104-2 「キャッシュ・コーディネーション」タブ、「トピック・コネクション・ファクトリ名」フィールド」の説明

  4. JMSコーディネート・キャッシュでこのセッションに使用するトピック・コネクション・ファクトリ名を入力します。これは、jms/<resource_name>のように、完全修飾されたJNDI名である必要があります。

JMSコーディネート・キャッシュでこのセッションに使用するトピック・コネクション・ファクトリ名を入力します。これは、jms/<resource_name>のように、完全修飾されたJNDI名である必要があります。

104.3.2 Javaを使用したトピック・コネクション・ファクトリ名の構成方法

JMSトピック・コネクションのJMSトピック・コネクション・ファクトリ名を構成するには、oracle.toplink.remotecommand.jms.JMSTopicTransportManagerのメソッドsetTopicConnectionFactoryNameを使用します。

JMSTopicTransportManagerを取得するには、次のSession APIを使用します。

Session.getCommandManager().getTransportManager()

104.4 トピック・ホストURLの構成

JMSトピック・ホストURLは、JMSトピックをホスティングするネットワーク上のマシンのURLです(104.2項「トピック名の構成」を参照)。

104.4.1 TopLink Workbenchを使用したトピック・ホストURLの構成方法

JMSコーディネート・キャッシュにトピック・ホストURLを指定するには、次の手順を実行します。

  1. ナビゲータでサーバー・セッションを選択します。そのプロパティがエディタに表示されます。

  2. 「キャッシュ・コーディネーション」タブをクリックします。「キャッシュ・コーディネーション」タブが表示されます。

  3. 「キャッシュ・コーディネーションを有効にする」が選択されており、「タイプ」「JMS」になっていることを確認します(詳細は、102.3項「キャッシュ・コーディネーション」を参照)。

    図104-3 「キャッシュ・コーディネーション」タブ、「トピック・ホストURL」フィールド

    図104-3の説明が続きます
    「図104-3 「キャッシュ・コーディネーション」タブ、「トピック・ホストURL」フィールド」の説明

JMSトピックをホスティングするネットワーク上のマシンのURL(JMSコーディネート・キャッシュでこのセッションに使用するURL)を入力します(104.2項「トピック名の構成」を参照)。

104.4.2 Javaを使用したトピック・ホストURLの構成方法

JMSトピックをホスティングするネットワーク上のコンピュータのURLを構成するには、oracle.toplink.remotecommand.jms.JMSTopicTransportManagerのメソッドsetTopicHostURLを使用します。

JMSTopicTransportManagerを取得するには、次のSession APIを使用します。

Session.getCommandManager().getTransportManager()

104.5 接続処理の構成

セッションのトランスポート・マネージャにより、コーディネート・キャッシュの複数メンバーへの接続が作成されます。これらの接続のいずれかで通信エラーが発生した場合、セッションでエラーを無視するか、接続を削除するかを構成できます。

エラー時に接続を削除するようにセッションを構成した場合、セッションは、そのコーディネート・キャッシュのメンバーとの通信を次回試行する際に、新しい接続を確立します。接続作成フェーズでエラーが発生した場合、TopLinkにより、RemoteCommandManagerException.ERROR_CREATING_JMS_CONNECTION(メッセージの送信中にエラーが発生した場合)またはRemoteCommandManagerException.ERROR_CREATING_LOCAL_JMS_CONNECTION(メッセージの受信中にエラーが発生した場合)がスローされます。このエラーからのリカバリを実行する場合、次のオプションを考慮してください。

エラーを無視するようにセッションを構成した場合、セッションは、そのコーディネート・キャッシュのメンバーとの通信を次回試行する際に、同じ接続を引き続き使用します。この場合、(ローカル)接続のリスニングでRemoteCommandManagerException.ERROR_RECEIVING_JMS_MESSAGE例外が発生すると、コーディネート・キャッシュでは10秒待機してからリスニングを再開します。このエラーからのリカバリを実行する場合、次のオプションを考慮してください。

いずれの場合も、コーディネート・キャッシュがNULL JMSメッセージを受信すると、RemoteCommandManagerException.ERROR_RECEIVED_JMS_MESSAGE_IS_NULL例外がスローされます。

104.5.1 TopLink Workbenchを使用した接続処理の構成方法

エラー時のTopLinkによるセッション接続の処理方法を指定するには、次の手順を実行します。

  1. ナビゲータでセッションまたはセッション・ブローカを選択します。そのプロパティがエディタに表示されます。

  2. 「キャッシュ・コーディネーション」タブをクリックします。「キャッシュ・コーディネーション」タブが表示されます。

  3. 「キャッシュ・コーディネーションを有効にする」オプションが選択されていることを確認し、適切なコーディネート・キャッシュの「タイプ」(JMS)を選択します。キャッシュ・コーディネーションの各オプションの値がタブ上で表示されます。

    図104-4 「キャッシュ・コーディネーション」タブ、「エラー時に接続を削除」オプション

    図104-4の説明が続きます
    「図104-4 「キャッシュ・コーディネーション」タブ、「エラー時に接続を削除」オプション」の説明

  4. エラー時にデータ・ソース接続を削除するようにセッションを構成する場合は、「エラー時に接続を削除」オプションを選択します。

エラー時にデータ・ソース接続を削除するようにセッションを構成する場合は、「エラー時に接続を削除」オプションを選択します。

104.5.2 Javaを使用した接続処理の構成方法

エラー発生時にリモート・サービスへの接続を切断するかどうかを定義するには、oracle.toplink.remotecommand.TransportManagerのメソッドsetShouldRemoveConnectionOnErrorを使用します。

TransportManagerを取得するには、次のSession APIを使用します。

Session.getCommandManager().getTransportManager()