Web メッセージング・サービスは、JavaTM Platform, Enterprise Edition (Java EE) アプリケーションの Web モジュールの WebContent/WEB-INF ディレクトリーにあるファイル webmsg.json から、 構成情報を読み取ります。この情報は、アプリケーションの開始および停止時に読み込まれ、構成情報によって Web メッセージング・サービスを初期化します。このファイルは Web モジュールの web.xml ファイルと一緒にあり、このファイルのロケーションを変更することはできません。 webmsg.json ファイルは JavaScriptTM Object Notation (JSON) 形式で指定され、特にファイルのコンテンツは JSON オブジェクトを表します。JSON オブジェクトはキーと値のペアの集合です。 以下の Web メッセージング構成ファイルの例を参照してください。
{ "WebMsgServlet": { "busName": "thebus", "destination": "Default.Topic.Space", "clientCanPublish": false, "longPollTimeout": 30 } } |
JSON オブジェクトのそれぞれのキーは、webmsg.json ファイルが指定されている同じ Web モジュールの既存のサーブレット名を指定します。 それぞれのキーの値は、Web メッセージング構成オプションが指定されている別の JSON オブジェクトです。着信する Web メッセージング要求は、指定されたサーブレットのサーブレット・マッピングによって判別されます。これらの着信要求は、指定した構成オプションによって処理されます。 以下の例は、WebMsgServlet サーブレットと関連サーブレット・マッピングが含まれている web.xml ファイルの断片です。
<servlet> <display-name>WebMsgServlet</display-name> <servlet-name>WebMsgServlet</servlet-name> <servlet-class> com.ibm.websphere.webmsg.servlet.WebMsgServlet </servlet-class> </servlet> <servlet-mapping> <servlet-name>WebMsgServlet</servlet-name> <url-pattern>/stockServlet</url-pattern> </servlet-mapping> |
上記の例では、WebMsgServlet サーブレットが /stockServlet にマップされます。/stockServlet に マップするすべての Web 着信メッセージング要求は、前出の webmsg.json 例の構成パラメーターにより 処理されます。このとき、Web メッセージング要求はサービス統合バスである thebus、デフォルトのトピック・スペースである Default.Topic.Space、Bayeux のロング・ポーリング・タイムアウトの 30 を使用し、Web メッセージング・クライアントはメッセージをサーバーに公開できません。
ほとんどの構成は 1 つのサーブレットと、関連した webmsg.json 構成エントリーを作成するだけですみます。 単一の Web モジュールで複数の定義を作成しなければならない場合があります。 例えば、別のサービス統合バスへの接続、異なるデフォルト宛先の指定、あるいは Bayeux のロング・ポーリング・タイムアウトによるクライアントの分離などの場合です。 構成パラメーターに基づいて着信する要求を分離するには、com.ibm.websphere.webmsg.servlet.WebMsgServlet にマップした新規サーブレット定義および新規サーブレット・マッピングを作成する必要があります。 最後に、希望する構成パラメーターを使用して webmsg.json に新規エントリーを作成します。 このエントリーは新規に作成したサーブレットにマップするキーを持つ必要があります。
以下のサブセクションでは、可能なすべての Web メッセージング構成オプションを詳しく説明します。