![]() ![]() ![]() ![]() |
イベント ジェネレータ モジュールでは、以下の作業を行うことができます。
注意 : | イベント ジェネレータを作成、変更、または削除するには、Administrators グループ、IntegrationAdministrators グループ、または IntegrationOperators グループのメンバーとしてログインする必要があります。Worklist Console オンライン ヘルプの「ユーザ管理」にある WebLogic Integration のユーザ、グループ、ロール、およびセキュリティ ポリシーに関する説明を参照してください。 |
イベント ジェネレータは、システム イベント (ディレクトリへのファイルの到着、電子メール アカウントまたは JMS キューへのメッセージの到着など) に応答して、メッセージ ブローカ チャネルにメッセージをパブリッシュします。WebLogic Integration Administration Console からは、以下のイベント ジェネレータを作成できます。
それぞれのイベント ジェネレータについて、一連のチャネル ルールをコンフィグレーションします。JMS イベント ジェネレータの場合、これらのルールは、ユーザが指定した順番で、受信した JMS メッセージに対して適用されます。たとえば、以下のルールは JMS イベント ジェネレータ用にコンフィグレーションされたものです。
この場合、JMS ヘッダー プロパティ「VendorId」が「ACME Trading Corp」に設定されているメッセージは、myapp/orders/AllOrders
チャネルにポストされてしまいます。「VendorId」プロパティによって 1 番目のルールがトリガされるためです。所期の結果をもたらすには、ルールの順序を逆にする必要があります。
これで、JMS ヘッダ プロパティ「VendorId」が「ACME Trading Corp」に設定されているメッセージが myapp/orders/ACMEOrders
チャネルに正しくポストされるようになりました。
チャネル ルールの順序が重要になるのは、JMS イベント ジェネレータのみです。電子メールまたはファイルのイベント ジェネレータの場合、ルールの順序は重要ではありません。
『WebLogic Integration ソリューションのデプロイメント』の以下の節にも、イベント ジェネレータの構成に関する情報が記載されています。
wli.jmseg.EatSoapActionElement
プロパティの設定については、「wli-config.properties コンフィグレーション ファイル」を参照。
イベント ジェネレータ モジュールからアクセスできるページを次の表に示します。この表では、ページごとに関連タスクとヘルプ トピックも示しています。
イベント ジェネレータ モジュールでは、WebLogic Integration の一部として含まれるイベント ジェネレータを作成およびデプロイできます。この節の説明に従って作成した新しいイベント ジェネレータは、パッケージ化され、EJB (JMS イベント ジェネレータ、ファイル イベント ジェネレータ、電子メール イベント ジェネレータ、タイマー イベント ジェネレータ、MQ イベント ジェネレータ、および RDBMS イベント ジェネレータ) または Web アプリケーション モジュール (HTTP イベント ジェネレータ) として単一の管理対象サーバ上にデプロイされます。作成されデプロイされたイベント ジェネレータは、必要に応じてサスペンド、再開、またはチャネル ルールの追加を行うことができます。
注意 : | JMS イベント ジェネレータ、HTTP イベント ジェネレータ、MQ イベント ジェネレータ、および RDBMS イベント ジェネレータは、クラスタ内の任意の数の管理対象サーバを対象にすることができます。JMC と MQ のイベント ジェネレータは、通常、物理的な JMS 送り先を使用する場合は 1 台の管理対象サーバ、分散送り先を使用する場合はクラスタにデプロイされます。1 台の管理対象サーバにデプロイする場合は、この節の手順を参照してください。 |
注意 : | 名前は大文字と小文字を区別しません。先頭または末尾のスペースは削除されます。 |
注意 : | イベント ジェネレータはチャネル ルールなしで作成されデブロイされます。そのため、まずジェネレータのチャネル ルールを定義する必要があります。 |
選択したタイプに応じた [新規作成] 用ページが表示されます。
注意 : | イベント ジェネレータはチャネル ルールなしで作成されデブロイされます。そのため、まずジェネレータのチャネル ルールを定義する必要があります。 |
注意 : | この機能は、便宜を図るためだけに提供されています。電子メールまたはファイルのイベント ジェネレータについては、チャネル ルールの順序は機能的に重要ではありません。 |
[ファイル ジェネレータ チャネル ルール定義] ページでは、チャネル ルールのプロパティを定義できます。
|
||||
[電子メール イベント ジェネレータ チャネル ルール定義] ページでは、チャネル ルールのプロパティを定義できます。
[JMS イベント ジェネレータ チャネル ルール定義] ページでは、チャネル ルールのプロパティを定義できます。
[タイマー ジェネレータ チャネル ルール定義] ページでは、チャネル ルールのプロパティを定義できます。
|
||||
[MQSeries ジェネレータ チャネル ルール定義] ページでは、チャネル ルールのプロパティを定義できます。
com.bea.wli.mbconnector.mqseries.AbstractContentFilter クラスの拡張である。
|
||
キュー内のメッセージをメッセージ コンテンツに基づいてフィルタ処理するには、com.bea.wli.mbconnector.mqseries.AbstractContentFilter
クラスを拡張したカスタム コンテンツ フィルタ クラスが必要です。
package com.bea.wli.mqseries.eventgen.contentfilter;
import com.bea.wli.mbconnector.mqseries.AbstractContentFilter;
public class ContentFilter extends AbstractContentFilter
{
public ContentFilter()
{
}
public boolean matchContent(byte abyte[])
{
/*この関数は常に true を返します。これは、すべてのメッセージで
イベントを生成できるようにするためです。ただし、ユーザは
メッセージのコンテンツに応じて、コンテンツ フィルタ ロジックを
ここに記述する必要があります。この関数に渡される
abyte[] バイト配列パラメータは、メッセージをバイト配列で
表したものです。メッセージがイベントを生成する必要が
ある場合には true を、そうでない場合は false を
返します。*/
return true;
}
この関数のパラメータは、イベント ジェネレータによってキューから取得されるメッセージを表すバイト配列です。このバイト配列によって表されるメッセージのコンテンツに対して必要なチェックを行うことによって、コンテンツ フィルタ処理のロジックを作成できます。メッセージがイベントを生成する場合は、ブール値の True を返します。イベントを生成しない場合は、ブール値の False を返します。
コンテンツ フィルタ処理のロジックを定義したら、それを実装するクラスを jar ファイルにバンドルし、WebLogic の CLASSPATH
にインクルードする必要があります。
mqegEjbUtil.jar
ファイルを WL_HOME
\integration\egs\mqEG.ear
ファイルから抽出し、カスタム コンテンツ フィルタ クラスを作成する環境の CLASSPATH
に含めます。com.bea.wli.mbconnector.mqseries.AbstractContentFilter
を拡張してクラスを作成します。注意 : | このクラスは、手順 1 で抽出した mqegEjbUtil.jar ファイルにあります。 |
mqegEjbUtil.jar
から AbstractContentFilter
クラスを抽出し、パッケージ構造を維持した状態でファイル システムのディレクトリに格納します。com.bea.wli.mbconnector.mqseries.AbstractContentFilter
クラスと手順 4 でコンパイルしたカスタム コンテンツ フィルタ クラスを含んだ JAR (たとえば、mycontentfilter.jar
) を作成します。CLASSPATH
変数にインクルードします。
[HTTP ジェネレータ チャネル ルール定義] ページでは、チャネル ルールのプロパティを定義できます。
[RDBMS イベント ジェネレータ チャネル ルール定義] ページでは、チャネル ルールのプロパティを定義できます。
表 5-10 に使用できる設定を示します。
|
||||
|
||||
SELECT * " は、Post クエリがクエリのカラムを参照している場合には、実行できない。選択したカラムは個々にリストされている必要がある。すべての SQL 文では完全修飾のテーブル名を使用すること。
no-op ] (「No Operation」を意味する) が指定されている場合、選択された行は自動的に削除されることはない。Post クエリを指定しない場合、選択された行が自動的に削除されないようにするには、[Post クエリ] フィールドに no-op を入力する必要がある。また、automatic-delete は、SELECT クエリが 1 つのテーブルを参照している場合にのみ、機能する (SELECT DEPT. NAME, EMP.ADDRESS FROM DEPT., EMP WHERE DEPT.NAME = EMP NAME は複数のテーブルを参照)。automatic-delete は DB2 および Informix では機能しない。
|
[すべてのイベント ジェネレータを表示する] ページでは、コンフィグレーションされた各イベント ジェネレータについて、以下の情報が表示されます。
[イベント ジェネレータ定義] のページでは、チャネル ルールの表示および更新ができます。JMS イベント ジェネレータの場合は、デフォルトのルール チャネルを更新することもできます。
[JMS イベント ジェネレータの詳細] ページが表示されます。
注意 : | この操作ができないイベント ジェネレータのタイプもあります。 |
上向き矢印または下向き矢印 ボタンをクリックして、リスト内のエントリを上または下に移動します。リスト内の順序の変更は、すぐに有効になります。
[すべてのイベント ジェネレータを表示する] ページから、イベント ジェネレータをサスペンドまたは再開できます。ジェネレータをサスペンドすると、イベント ジェネレータはアンデプロイされます。ジェネレータを再開すると、ジェネレータはデプロイされます。
注意 : | 読み込まれたメッセージまたはエラーの数は、メモリ内にのみ格納されます。ディスクまたは他の永続ストアには格納されません。そのため、イベント ジェネレータをサスペンドおよび再開すると、読まれたメッセージ数およびエラー数は 0 にリセットされます。 |
注意 : | すでに実行中のジェネレータを再開、またはすでにサスペンド中のジェネレータをサスペンドしようとすると、その命令は無視されます。 |
注意 : | サーバを再起動する前にイベント ジェネレータがサスペンドされていた場合、再起動時にイベント ジェネレータは自動的に実行モードに切り替わります。これはすべてのイベント ジェネレータに共通の動作です。 |
注意 : | すべてのイベント ジェネレータにおいて、イベント ジェネレータをサスペンドすると数が 0 にリセットされます。RDBMS イベント ジェネレータをサスペンドした場合は、イベント ジェネレータが 0 にリセットされるとともに、メッセージが [最後にリセットした時間] に変わります。 |
[すべてのイベント ジェネレータを表示する] ページでは、読まれた数およびエラーの数をリセットできます。
[イベント ジェネレータ定義] のページから、チャネル ルールを削除できます。
注意 : | 対象のイベントがコンフィグレーションされたユーザ テーブルにトランザクションが行を挿入しているときは、RDBMS イベント ジェネレータのチャネル ルールを削除することはできません。トランザクションが完了するまで待ってから、チャネル ルールを削除する必要があります。 |
[すべてのイベント ジェネレータを表示する] ページから、イベント ジェネレータを削除できます。
TIBCO Rendezvous (TIBCORV) イベント ジェネレータは、WebLogic Integration Administration Console で作成できる WebLogic IntegrationTM イベント ジェネレータの 1 つです。TIBCORV イベント ジェネレータは特定のサブジェクトに関するメッセージをリスンし、目的のメッセージを受信したときにメッセージ ブローカに対してイベントを生成します。図 5-14 は、[TibcoRV イベント ジェネレータ] ページを示しています。
TibcoRV イベント ジェネレータおよび WebLogic Integration の最新情報については、http://edocs.beasys.co.jp/e-docs/wli/docs92/index.html を参照してください。
![]() ![]() ![]() |