AccountPublish.jws サンプル
メッセージを JMS トピックにパブリッシュする JMS コントロールの使用を示す Web サービスです。AccountSubscribe.jws は、このサンプルと組になっています。
トピックに関する JMS コントロールの使用
カスタム JMS コントロール メソッドの使用
JMS メッセージ プロパティの使用
このサンプルは、samples WebLogic Workshop プロジェクトの jms フォルダにあります。ファイル システムでの場所は次のとおりです。
BEA_HOME\weblogic700\samples\workshop\applications\samples\jms\AccountPublish.jws
AccountPublish.jws サンプルと AccountSubscribe.jws サンプルは協調して動作します。次の手順では、両方のサービスを使用する方法について説明します。
適切なドメインにある WebLogic Server を起動します。
Microsoft Windows システムでは、[スタート] メニューから次のように選択します。
[BEA WebLogic E-business Platform|BEA WebLogic Platform 7.0|WebLogic Workshop Samples|Start Samples Server]
Linux システムまたは Solaris システムでは、次のスクリプトを実行します。
BEA_HOME/weblogic700/samples/workshop/startWebLogic.sh
ブラウザ(WebLogic Workshop ビジュアル開発環境からではない)で「http://localhost:7001/samples/jms/AccountSubscribe.jws」に移動します。適切なドメインにある WebLogic Server がこのマシン上で実行されている場合は、ここをクリックして AccountSubscribe.jws を実行することもできます。
必要な場合は、テスト ビューの [Test Form] タブに移動します。
startListening メソッドを呼び出します。これで AccountSubscribe.jws Web サービスによって、jms.AccountUpdate という JMS トピックにパブリッシュされるメッセージがリスンされます。
WebLogic Workshop で AccountPublish.jws サービスを開いて [開始] を選択するか、またはブラウザのアドレス バーに「http://localhost:7001/samples/jms/AccountPublish.jws」と入力して、AccountPublish.jws サービスを起動します。適切なドメインにある WebLogic Server がこのマシン上で実行されている場合は、ここをクリックして AccountPublish.jws を実行することもできます。
必要な場合は、テスト ビューの [Test Form] タブに移動します。
accountID の文字列値および amount の数値を入力し、deposit メソッドを呼び出します。この時点で、メッセージは jms.AccountUpdate JMS トピックにパブリッシュされます。
AccountSubscribe.jws をテストしているブラウザで、[Refresh] を選択します。
accountUpdateReceived コールバックがクライアントに送信されたことを確認する必要があります。
accountUpdateReceived ログ エントリを選択して、コールバックのペイロードを確認します。ステップ 7 で deposit メソッドに対して入力したのと同じ情報が含まれている必要があります。
アカウント トランザクションを含むメッセージは、AccountPublish.jws によって使用される AccountPublishJMSControl.ctrl JMS コントロールによってトピックにパブリッシュされました。その後、JMS サーバによって、メッセージはすべてのアクティブなサブスクライバに送信されました。AccountSubscribe.jws は、AccountSubscribeJMSControl.ctrl JMS コントロールを介してトピックを購読するときにメッセージを受信します。2 つの CTRL ファイルを調べると、入力した情報が JMS コントロールの @jws:jms-property プロパティと @jws:jms-header プロパティによって、メッセージ プロパティとメッセージ本文の両方でエンコードされていることがわかります。JMS メッセージングを使用する場合には、メッセージの送信側と受信側で設計時にメッセージ フォーマットを取り決めておく必要があります。