ポートレット Uniform Resource Locator (URL) のアドレス可能性

Uniform Resource Locator (URL) からポートレットを直接要求して、 ポータルを集約せずにそのコンテンツを表示することができます。 PortletServingServlet サーブレットは、ポートレットを含む各 Web アプリケーションを登録します。このサーブレットは、リソースを提供する、Web コンテナーの FileServingServlet サーブレットに類似しています。PortletServingServlet サーブレットは、URL 要求によるポートレットの完全なブラウザー・ページへの直接レンダリングをサポートします。

各ポートレット用に 作成された URL マッピング /<portlet-name> を使うと、 コンテキスト・ルートと名前によって、 ポートレットを個別に呼び出すことができます。以下に例を示します。
http://<host>:<port>/<context-root>/<portlet-name> For example, 
 http://localhost:9080/portlets/TestPortlet1
コンテキスト・ルートは、ポートレットを含む Web アーカイブ (WAR) ファイルを識別します。ポートレット名によって、WAR ファイルのポートレット・アプリケーションを備えたポートレットが一意的に識別さ れます。 DefaultDocumentFilter サーブレットは、HTML、 UTF8 エンコード方式、および基本 URL 形式に基づく拡張 URL 形式のみをサポートします。

PortletServingServlet サーブレットを使用して表示できるのは、一度に 1 つのポートレットだけです。 ページにある複数のポートレットを集約する場合は、 集約タグ・ライブラリーを使用する必要があります。 追加情報については、『JavaServer Pages を使用したポートレットの集約』の項目を参照してください。

通常、サーブレットは文書を出力するのに対して、ポートレットはフラグメントを出力するため、 フラグメントを文書に変換するために PortletDocumentFilter フィルターと呼ばれるメカニズムが導入されます。 デフォルトでは、PortletDocumentFilter フィルターは、HTML の変換のみをサポートしています。 変換は、文書内のポートレットの内容を戻すために PortletServingServlet サーブレットが開始される前に、 サーブレット・フィルターを使用して実装されます。 このデフォルトの文書サーブレット・フィルターは、URL 要求にのみ適用され、 RequestDispatcher メソッドを使用した組み込みや転送には適用されません。 サーブレット・フィルターを作成して、他のマークアップの追加の文書サーブレット・フィルターをサポート できます。 追加情報については、『ポートレット・フラグメントの HTML 文書への変換』の項目を参照してください。

PortletServingServlet サーブレットでは、XML ファイルまたはデータベース内のポートレット設定は永続しません。 このサーブレットは、ポートレット設定を直接 Cookie 内に配置して、設定を永続的に保管します。 この振る舞いを変更する方法に関する追加情報については、『ポートレットの設定』の項目を参照してください。

ポートレット URL の構文

ポートレット・モードやウィンドウ状態などの、追加のポータル・コンテキストを追加できます。 次のような構造の URL マッピングを使用して、PortletServingServlet サーブレットにアクセスできます。
http://host:port/context/portlet-name [/portletwindow[/ver [/action | 
 /resource[/id=custom-id][/cacheability]] [/mode] [/state] [rparam][/?name]]]
URL 構造が異なる場合は、com.ibm.wsspi.portletcontainer.InvalidURLException 例外の原因となります。 パラメーター値として空ストリングを使用することはできません。 InvalidURLException 例外になります。 以下に、有効なパラメーターのリストを示します。
http:// host:port/context/portlet-name
これは、ポートレットへのアクセスに必要な最低限の URL です。 「default」と呼ばれるデフォルトのポートレット・ウィンドウが作成されます portlet-name 変数には、大文字小文字の区別があります。
/portletwindow
このパラメーターは、ポートレット・ウィンドウを識別します。 URL にさらにポータル・コンテキスト情報を追加する場合は、このパラメーターを設定する必要があります。
/ver=major.minor
このオプション・パラメーターは、使用するポートレット API のバージョンを定義するために使用します。 URL にさらにポータル・コンテキスト情報を追加する場合は、このパラメーターを設定する必要があります。 バージョン "1.0" および "2.0" のみがサポートされています。 他のバージョンはすべて、InvalidURLException 例外の原因となります。
/action
これは、ポートレットのアクション・メソッドを呼び出す場合の必須パラメーターです。 アクション・パラメーターによって、ポートレットのアクション・プロセスが呼び出されます。 アクションが完了すると、リダイレクトが自動的に発行され、レンダリング・プロセスが呼び出されます。 以後のレンダリング・プロセスを制御するには、文書サーブレット・フィルターで「com.ibm.websphere.portlet.action」という名前の要求属性と値「redirect」を設定して、レンダリング・プロセスを呼び出さずに、PortletServingServlet がアクションの後に直接戻るように指定することができます。
/mode=view | edit | help | custom-mode
このオプション・パラメーターは、ポートレットのレンダリングに使用するポートレット・モードを定義します。 デフォルト・モードは「view」です。 この値には、大文字小文字の区別はありません。 例えば、「View」、「view」、または「VIEW」は同じモードになります。
/state=normal | maximized | minimized | custom-state
このオプション・パラメーターは、ポートレットのレンダリングに使用するウィンドウ状態を定義します。 デフォルトの状態は「normal」です。 この値には、大文字小文字の区別がありません。例えば、「Normal」、「normal」、または「NORMAL」は同じ状態になります。
* [ /rparam=name *[=value] ]
このオプション・パラメーターは、ポートレットのレンダリング・パラメーターを指定します。 複数のレンダリング・パラメーターを指定する場合は、このパラメーター・チェーンを繰り返します。 例えば、/rparam=invitation/rparam=days=Monday=Tuesday のようにします。
?name=value&name2=value2 …
オプションで、照会パラメーターが後に続く場合があります。 これらのパラメーターは、ポートレット・コンテナーでは、明示的にはサポートされていませんが、 URL フォーマットが無効になることはありません。
/action | /resource
このパラメーターは、呼び出されるポートレットのメソッドを定義します。有効な値は no、action または resource パラメーターです。 render メソッドを呼び出す特定のメソッドは定義されていません。 resource パラメーターは JSR 286 ポートレットでのみサポートされています。
/resource [/id=custom-id] [/cacheability=cacheLevelFull | cacheLevelPortlet | cacheLevelPage]
呼び出されるポートレットのメソッドを定義するには、このパラメーターを設定します。リダイレクトは発生しません。 ポートレットのそれ以外のメソッドは呼び出されません。resource パラメーターを制御するには、ID パラメーターを追加して、ポートレットに渡されるリソース・サービス提供 ID を指定できます。 cacheability パラメーターは、このリソース URL のキャッシュ・レベルを定義します。 このパラメーターは JSR 286 ポートレットでのみサポートされています。
[AIX Solaris HP-UX Linux Windows][z/OS]以下のリストに、有効な JSR 168 および JSR 286 の URL の例を示します。
  • http:// localhost:9080/sample/WorldClock
  • http:// localhost:9080/sample/WorldClock/myPortlet/ver=1.0/mode=edit/rparam=timezone=UTC
  • http:// localhost:9080/sample/WorldClock/myPortlet/ver=1.0/action/state=maximized?timezone=UTC
  • http://localhost:9080/sample/WorldClock/myPortlet/ver=2.0/resource/id=somePicture.jpg
[IBM i]以下のリストに、有効な JSR 168 および JSR 286 の URL の例を示します。
  • http:// your.server.name:9080/sample/WorldClock
  • http:// your.server.name:9080/sample/WorldClock/myPortlet/ver=1.0/mode=edit/rparam=timezone=UTC
  • http:// your.server.name:9080/sample/WorldClock/myPortlet/ver=1.0/action/state=maximized?timezone=UTC
  • http://your.server.name:9080/sample/WorldClock/myPortlet/ver=2.0/resource/id=somePicture.jpg

トピックのタイプを示すアイコン 概念トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cport_url_address
ファイル名:cport_url_address.html