10.9. トランスポート固有の設定の実装
JBoss Enterprise SOA Platform 設定モデルには、
<provider>、<bus>、および <listener> (JMS、SQL など)のトランスポート固有のバリアントがあります。 これらの特別なバリアントのいずれかを使用すると、設定の検証が強化されます。これらの特殊化は、製品によってサポートされる各トランスポートの設定要件を明示的に定義します。
注記
特定の実装のいずれかを使用すると、XSD 対応の XML エディター(JBoss Developer Studio など)を使用している場合は設定が容易になります。
重要
Red Hat は、JBoss MRG 設定の作成時に、ベースタイプの代わりにこれらの特殊なタイプを使用することを推奨します。唯一のバリエーションは、新しいトランスポートが公式の製品リリース外でサポートされている場合です。
トランスポート固有の代替手段から設定を作成する際にも、ベースタイプから設定を作成するときに適用される同じ基本プリンシパルが適用されます。
- プロバイダー設定を定義します(例:<jms-provider>)。
- バス設定を新しいプロバイダー(<jms-bus> など)に追加し、一意の busid 属性値を割り当てます。
- <services> を通常として定義します。これは、単に作成した新しいバス設定を参照(busidref を使用)するトランスポート固有のリスナー設定(<jms-listener> など)を追加します。(例:<jms-bus> を参照する <jms-listener>)。
これらのトランスポート固有のタイプを使用する場合に適用される唯一のルールは、あるタイプのリスナーから別のタイプのバスに相互参照できないことです。つまり、<jms-listener> から <jms-bus> のみを参照できます。ランタイムエラーで、相互参照が作成されます。
そのため、この製品にあるトランスポート固有の実装は以下のとおりです。
- jms: <jms-provider>、<jms-bus>、<jms-listener> および <jms-message-filter>: <jms-message-filter> は、<jms-bus> または <jms-listener> 要素のいずれかに追加できます。ここで、<jms-provider> および <jms-bus> は JMS 接続プロパティーを指定します。ここで、<jms-message-filter> は実際のメッセージ QUEUE/TOPIC とセレクターの詳細を指定します。
- SQL: <sql-provider>、<sql-bus>、<sql-listener> および <sql-message-filter>: <sql-message-filter> は、<sql-bus> または <sql-listener> 要素のいずれかに追加できます。<sql-provider> および <sql-bus> は JDBC 接続プロパティーを指定し、<sql-message-filter> はメッセージ/行の選択と処理プロパティーを指定します。
- ftp: <ftp-provider>、<ftp-bus>、<ftp-listener> および <ftp-message-filter>: <ftp-message-filter> は、<ftp-bus> または <ftp-listener> 要素のいずれかに追加できます。<ftp-provider> および <ftp-bus> は FTP アクセスプロパティーを指定します。<ftp-message-filter> はメッセージ/ファイルの選択と処理プロパティーを指定します。
- hibernate: <hibernate-provider>、<hibernate-bus>、<hibernate-listener> : <hibernate-message-filter> は <hibernate-bus> または <hibernate-listener> 要素のいずれかに追加できます。ここで、<hibernate-provider> は hibernate 設定プロパティーの場所などのファイルシステムのアクセスプロパティーを指定し、<hibernate-message-filter> はリッスンするクラス名およびイベントを指定します。
- ファイルシステム:<fs-provider>、<fs-bus>、<fs-listener>、および <fs-message-filter> は、<fs-bus> または <fs-listener> 要素のいずれかに追加できます。ここで、<fs-provider> および <fs-bus> は File System アクセスプロパティーを指定し、<fs-message-filter> はメッセージ/ファイルの選択と処理プロパティーを指定します。
- schedule: <schedule-provider>.これは特別なタイプのプロバイダーで、上記のバスベースのプロバイダーとは異なります。詳細は、Scheduling を参照してください。
- JMS/JCA 統合:<jms-jca-provider>: このプロバイダーは <jms-provider> の代わりに使用して、JCA インフローを使用した受信メッセージの配信を有効にすることができます。これにより、アクションパイプラインにトランザクションフローが導入され、JTA トランザクション内のアクションが含まれます。
各トランスポート固有のタイプには、base に存在しない追加の要素が含まれます。これは <*-message-filter> です。この要素は、<*-bus> または <*-listener> 内に追加できます。両方の場所でこの要素を使用する場合は、バスに対してグローバルにメッセージフィルターリングを指定できます(つまり、バスを使用するすべてのリスナーに対して)。またはローカル(リスナーバイリスナーベース)を指定できます。
| Property Name | Description | 必須 |
|---|---|---|
| dest-type | 宛先のタイプ(QUEUE または TOPIC のいずれか)。 | はい |
| dest-name | キューまたはトピックの名前 | はい |
| selector | このメッセージセレクターでフィルターリングする同じキュー/トピックで複数のリスナーを登録できるようにします。 | いいえ |
| 永続 | JMS の配信モードを永続化する必要があるかどうかを示します。true または false に設定します。(デフォルトは true です。) | いいえ |
| acknowledge-mode | JMS セッション確認モード。AUTO_ACKNOWLEDGE、CLIENT_ACKNOWLEDGE、DUPS_OK_ACKNOWLEDGE のいずれかです。デフォルトは AUTO_ACKNOWLEDGE です。 | いいえ |
| jms-security-principal | JMS 宛先ユーザー名。これは、宛先への接続の作成時に使用されます。 | いいえ |
| jms-security-credential | JMS 宛先パスワード。これは、宛先への接続の作成時に使用されます。 | いいえ |
以下は、設定例です。
| Property Name | Description | 必須 |
|---|---|---|
| name | リスナー名。 | はい |
| busrefid | リッスンする JMS バスの ID。 | いいえ |
| is-gateway | この JMS リスナーインスタンスはゲートウェイであるか、またはメッセージ対応のリスナーです。 | いいえ。デフォルトは false です。 |
| maxThreads | JMS バスでメッセージをリッスンしているときに使用するスレッドの最大数。is-gateway が false の場合のみ関連します。 | いいえ。デフォルトは 1 です。 |
| clientId | JMS 接続に関連付けるクライアント ID。接続とそのオブジェクトを、プロバイダーによってクライアントの代わりに維持される状態に関連付けるために使用されます。(例:永続サブスクリプション)。 | いいえ。clientId が必要な場合(例:durableSubscriptionName が指定されている場合)、が指定されていない場合、デフォルトはリスナー名になります。 |
| durableSubscriptionName | 永続的なサブスクリプション名。 | いいえ。JMS トピックにのみ関連します。 |