ポートレット間通信を実装するには、WebLogic Workshop の [ポートレット イベント ハンドラ] ダイアログ ボックスを使用して、ポートレットにイベント ハンドラを追加するのが一番簡単な方法です。これらのハンドラは、アプリケーションの任意のポートレットのイベントをリスンし、必要に応じてイベントに対応します。このツールを使用すると、ソース ファイルに実際にコードを記述する必要なしに、イベント ハンドラをポータル アプリケーションに視覚的に追加できます。これは WebLogic Portal でポートレット間通信を実装するための推奨された方法です。
注意 : 複数のポートレットで同じイベントをリスンするとき、ポートレット間で不適切なアクションが発生しないようにします。たとえば、特定のイベントが発生したとき、2 つのポートレットが両方とも最大化される (または両方で改ページ イベントが発生する) ような場合、そのポータルの設計は不適切です。
ポートレット間通信および WebLogic Portal の詳細については、「ポートレット間通信ガイド」を参照してください。
WebLogic Workshop を使用してポートレット間通信を実装するには
注意 : この手順を始める前に、WebLogic Workshop が実行中であり、デザイン ビューにポートレットが表示されていることを確認してください。
[ポートレット イベント ハンドラ] ダイアログ ボックスの右側に、選択したイベントに関するイベントの詳細フィールドが表示され、[イベント] ボックスおよび詳細パネルのラベルに、イベント タイプが表示されます。
これらの条件は省略可能です。いずれか一方または両方をチェックしなかった場合、イベント ハンドラはアプリケーション内のすべてのポートレットのイベントをリスンします。
[なし]、[これ]、または [任意] の値によって識別される不特定のポートレットを選択する ([なし] はどのポートレットもリスンせず、[これ] はこの特定のポートレットのみリスンし、[任意] はアプリケーション内の任意のポートレットをリスンする)。
この方法でポートレットを選択するには、[リスン先] ドロップダウン メニューを開き、[なし]、[これ]、または [任意] を選択します。
[リスン先] リスト ボックスに、ポートレットの説明ラベルが表示されます。
または
[リスン先] リスト ボックスに、ポートレットの説明ラベルが表示されます。
この例では、portlet_5_1 が remoteTest.portlet の説明ラベルです。
イベントによって、イベントを処理するときにポートレットが実行するアクションが決定します。イベント ハンドラは、イベントを発生させる子イベントをいくつでも持つことができます。
上の図に示すように、ポータル イベント ハンドラの既存イベントだけが表示されます。それらのイベントは次のとおりです。
イベント | アクションの実行 |
onActivation | ポートレットが表示されたとき。 |
onDeactivation | ポートレットが表示されなくなったとき。 |
onMinimize | ポートレットが最小化されたとき。 |
onMaximize | ポートレットが最大化されたとき。 |
onNormal | ポートレットが最大化または最小化の状態から通常の状態に戻ったとき。 |
onDelete | ポータルからポートレットが削除されたとき。 |
onHelp | ポートレットがヘルプ モードのとき。 |
onEdit | ポートレットが編集モードのとき。 |
onView | ポートレットが表示モードのとき。 |
onRefresh | ポートレットがリフレッシュされたとき。 |
この例では、[ウィンドウ状態の変更] アクションが選択されています (アクション名が [イベント] リストに追加され、詳細のラベルとして使用されています)。
[ポートレット イベント ハンドラ] ダイアログ ボックスが閉じ、追加したイベント ハンドラがプロパティ エディタに表示されます。