Skip navigation.

ポートレット間通信の確立

  前 次 前と次、目次/インデックス/pdf を分けるコロン 目次  

ポートレット間通信の概要

ポートレット間通信 (IPC) とは、あるポートレット内のイベントが、別のポートレット内の何らかの動作を制御する方法のことです。ポートレット間通信の例を次に示します。

BEA WebLogic Portal 8.1 Service Pack 4 から、ポートレット間通信を実装するために比較的単純なツールを導入しました。このツール (WebLogic Workshop のダイアログ ボックス) を使用すると、簡単にイベント ハンドラをポートレットに追加し、ハンドラが別のポートレットでイベントを検出したときに開始するアクションを追加できます。

このマニュアルでは、イベント ハンドラを実装して IPC を確立する方法について説明します。内容は以下のとおりです。

 


WebLogic Portal の IPC モデル

WebLogic Portal の以前のバージョンでは、 listenTo() メソッドまたはバッキング ファイルをページ フロー ポートレットに追加する方法により、ポートレット間通信を確立することができました。WebLogic Portal 8.1 Service Pack 4 から、イベント ハンドラに基づく新しい IPC モデルが導入されています。イベント ハンドラは、ポータル内の他のポートレットに対して事前定義されたイベントをリスンし、そのイベントが発生したときにアクションを開始する Java オブジェクトです。

イベント ハンドラ

イベント ハンドラは、サブスクライブしたポートレットで発生するイベントを「リスン」して、特定のイベントが検出されるとアクションを開始します。イベント ハンドラがリスンして反応できるのは、次のタイプのイベントです。

ポータル イベント アクション

イベント アクションは、発生するイベントのタイプによって異なります。ポータル イベントを除くすべてのイベントは、イベント ハンドラ ツールの [イベント] フィールドで指定できます。表 1-1 に、ポータルのイベント ハンドラで使用可能なイベントを示します。


 

表 1-1 ポータル イベント ハンドラで処理できるイベント

イベント

アクションの実行

onActivation

ポートレットが表示されたとき。

onDeactivation

ポートレットが表示されなくなったとき。

onMinimize

ポートレットが最小化されたとき。

onMaximize

ポートレットが最大化されたとき。

onNormal

ポートレットが最大化または最小化の状態から通常の状態に戻ったとき。

onDelete

ポータルからポートレットが削除されたとき。

onHelp

ポートレットがヘルプ モードに入ったとき。

onEdit

ポートレットが編集モードに入ったとき。

onView

ポートレットが表示モードに入ったとき。

onRefresh

ポートレットがリフレッシュされたとき。


 

カスタム イベント

カスタム イベントは、開発者が定義するイベントです。つまり、WebLogic Portal 8.1 ですぐに利用できる状態で用意されたイベントではありません。カスタム イベントを使用して、開発者が定義したペイロードを渡したり、他の定義済みのアクションを開始したりできます。カスタム イベントは、宣言によって実行するか、バッキング ファイル内のメソッドの呼び出しに基づいて実行できます。ユーザは、バッキング ファイルのメソッドでイベントを処理するように指定できます。

 


イベント アクション

イベント ハンドラがリスンしているポートレットでアクションを開始するのは、アプリケーションの別のポートレットでイベントを検出したときです。たとえば、ユーザが該当のポートレットを最小化すると、onMinimize と呼ばれるポータル イベントが発生し、イベントをリスンしているハンドラがアクションを開始して、ポートレットに追加されているバッキング ファイルを呼び出します。

表 1-2 に、使用可能なイベント アクションを示します。


 

表 1-2 イベント アクション

アクション

内容

ウィンドウ モードの変更

ウィンドウ モードを現在のモードからユーザ指定のモードに変更する。たとえば、ヘルプ モードから編集モード。

ウィンドウ状態の変更

ウィンドウ状態を現在の状態からユーザ指定の状態に変更する。たとえば、最大化状態から削除状態。

ページのアクティブ化

ユーザ指定のページを開く。

汎用イベントの開始

ユーザ指定の汎用イベントを開始する。

カスタム イベントの開始

ユーザ定義のカスタム イベントを開始する。このイベントはポートレット ファイルに組み込む必要がある。

BackingFile メソッドの呼び出し

ポートレットに追加されているバッキング ファイル内のメソッドを実行する。バッキング ファイルを使用すると、ポートレットにプログラミングによる機能を追加でき、ポータル コントロールを表示する前の事前処理 (認証など) が可能になる。詳細については、第 5 章の「バッキング ファイルについて」を参照してください。


 

 


IPC の実装方法

WebLogic Workshop に含まれる IPC ツールを使用すると、イベント ハンドラの実装は比較的容易になります。このツールを起動するには、次の手順に従います。

  1. WebLogic Workshop でポートレットを開きます。
  2. ポートレットのプロパティ エディタで、[イベント ハンドラ] の横の [...] ボタンをクリックします (イベント ハンドラが追加されていない場合、[イベント ハンドラ] フィールドにこのボタンが表示されます。イベント ハンドラが追加されている場合は、このフィールドには追加された数が表示されます)。
  3. 図 1-1 に示すように、ツールが表示されます。

    図 1-1 イベント ハンドラ ツール


     
  4. [ハンドラを追加] をクリックして、イベント ハンドラのドロップダウン メニューを開き、ハンドラを選択します。
  5. ダイアログ ボックスが展開して、ハンドラの設定に使用できるフィールドが追加表示されます (図 1-2)。

    図 1-2 展開されたイベント ハンドラ ツール


     

イベント ハンドラを設定するすべてのプロセスは、このツールで処理できます。次の操作が必要です。

  1. イベント ハンドラを選択します。
  2. ハンドラがリスンするポートレットを決定します。
  3. ハンドラがリスンするイベントを選択します。
  4. イベントが発生したときに開始するアクションを選択して、コンフィグレーションします。
  5. イベント ハンドラを保存します。

イベント ハンドラ ツールの使用方法の詳細については、WebLogic Workshop オンライン ヘルプの「WebLogic Workshop でポートレット間通信を確立するには」を参照してください。

 

Skip navigation bar  ページの先頭 前 次