内部ポートレットの通信

ポートレットが持つ最も有効な機能の 1 つは、他のポートレットと通信できる点です。 標準のポートレット API は通信メカニズムを定義しませんが、情報をパスする際の「メモ帳」として PortletSession を使用できます。 PortletSession は、複数のブラウザー要求を通じて、ポータルがユーザーの一時情報を識別および保存するために使用するメカニズムです。 アプリケーションのあるポートレットが PortletSession に書き込むことができ、アプリケーションの別のポートレットは、その値を読み取って使用できます。

ポートレット要求ライフ・サイクルにより、このような通信が可能になります。 ユーザー対話がポータル・ページで発生すると、以下のイベントが連続して起こります。
  1. イベントが発生したポートレットが、最初にイベントを処理します。このポートレットは、セッションのアプリケーション・スコープに属性を追加することができます。 その後、この属性は、アプリケーションのすべてのポートレットでアクセス可能となります。
  2. ポートレットがイベントへの応答を完了すると、ページの各ポートレット (イベントを 処理したポートレットを含む) は、それ自体をレンダリングします。 レンダリングの間、すべてのポートレットは、アプリケーション・スコープ属性にアクセスし、その属性を使用してユーザー・アクションに適切に応答できます。

フィードバック