JMS エンドポイント URL の構文
新しい業界標準の SOAP over JMS プロトコルの一部として Java™ Message Service (JMS) エンドポイント URL の構文が定義されています。JMS エンドポイント URL は、Java API for XML Web Services (JAX-WS) または Java API for XML-based RPC (JAX-RPC) Web サービスに JMS トランスポートでアクセスするために使用されます。この URL は、Web サービス要求のポート・コンポーネント名 のほか、JMS 宛先と接続ファクトリーを指定します。これは、 ホストとポートに加えてコンテキスト・ルートとポート・コンポーネント名も指定する HTTP エンドポイント URL に似ています。

IBM® およびその他のベンダーは、 2005 年以来、W3C の SOAP over JMS 仕様に取り組んできました。 この仕様は W3C に提出され、ワーキング・グループが設置されました。この文書の現行メンバーによる提案は、2007 年 10 月に共同で発表されました。アプリケーション・サーバーは、W3C からの現在のドラフト仕様をサポートしています。

jms:jndi:<destination-jndi-name>?<property>=<value>&<property>=<value>&...
URL の構成は、トランスポート・タイプ jms: の後に、可変タイプ
jndi:、宛先キューまたはトピックの JNDI 名が続き、さらに各種 JMS エンドポイント情報の指定に使用されるプロパティーと値のペアのリストを含む照会ストリングが続いたものです。jndi: バリアントは、エンドポイント URL ストリング内のオブジェクト名を見つけるために JNDI を使用していることを意味します。sptcfg次の表では、URL ストリングでサポートされるプロパティーについて説明しています。
プロパティー名 | 説明 |
---|---|
jndiConnectionFactoryName | クライアント・ランタイムが JMS メッセージング・エンジンへの接続の確立に使用する接続ファクトリーの JNDI 名を指定します。 |
targetService | 要求のディスパッチ先であるポート・コンポーネントの名前を指定します。 |
プロパティー名 | 説明 |
---|---|
jndiInitialContextFactory | 使用する初期コンテキスト・ファクトリー・クラスの名前を指定します。この値は、java.naming.factory.initial プロパティーにマップされます。 |
jndiURL | JNDI プロバイダーの URL を指定します。この値は、java.naming.provider.url プロパティーにマップされます。 |
プロパティー名 | 説明 |
---|---|
deliveryMode | 要求メッセージをパーシスタントにするかどうかを指定します。 有効な値は、PERSISTENT および NON_PERSISTENT です。 デフォルト値は NON_PERSISTENT です。 |
timeToLive | 要求メッセージの存続時間をミリ秒単位で指定します。 値 0 は、無制限に存続することを表します。このパラメーターを指定しない場合、JMS で定義されたデフォルト値が使用されます。 |
priority | 要求メッセージに関連付けられる JMS 優先順位を指定します。 この値は、0 (優先度最低) から 9 (優先度最高) までの正の整数として指定します。 このパラメーターを指定しない場合、JMS で定義されたデフォルト値が使用されます。 |
replyToName | 応答メッセージを送信する JMS 宛先の JNDI 名を指定します。このオプションのプロパティーを使用すると、クライアントは応答を受信する際に、一時キューではなく事前に定義された永続キューを使用できるようになります。 |
messageType | 要求メッセージで使用するメッセージ・タイプを指定します。 BYTES の値は、javax.jms.BytesMessage オブジェクトが使用されていることを表します。 TEXT の値は、javax.jms.TextMessage オブジェクトが使用されていることを表します。 デフォルト値は BYTES です。 |
必須プロパティーである jndiConnectionFactoryName および targetService は、JMS エンドポイント URL ストリングに含まれている必要があります。 残りのプロパティーは、任意指定です。
JMS 要求上で deliveryMode、timeToLive、および priority プロパティーの値を 設定した場合、その値は、JMS 要求メッセージから 対応する JMS 応答メッセージに伝搬されます。
この業界標準について詳しくは、Web サービスの仕様および API 文書の SOAP over Java Message Service の仕様を参照してください。