JSR 286 Portlet Specification 2.0 (PLT.11 – PLT.11.1.1.13)

続き・・・

PLT.11 Portlet Requests

リクエストオブジェクトは、processAction、processEvent、serveResource、renderメソッドに渡される。

PLT.11.1 PortletRequest Interface

PortletRequest は、すべてのリクエストインタフェースの共通機能を定義する。

PLT.11.1.1 Request Parameters

以下のメソッドでアクセスする。

  • getParameter
  • getParameterNames
  • getParameterValues
  • getParameterMap

特に目新しいことはないと思う。

PLT.11.1.1.1 Form and Query Parameters

フォームのデータがPOSTで送信される場合、コンテンツタイプがapplication/x-www-form-urlencodedなら、そのデータはポートレットのリクエストパラメータに投入される。リクエストパラメータに投入されてしまったら、リクエストオブジェクトの入力ストリームではアクセスはできない。POSTでのデータがパラメータセットに含まれないときには、ActionRequest/ResourceRequestの入力ストリームでアクセスできる。

GETで送信される場合、フォームのデータは送信されたPortlet URLに付け足され、ポートレットのリクエストパラメータとしてアクセスできる。(うーん、何か表現が曖昧な気が・・・)

いくつかのポータル実装では、内部状態をURLクエリー文字列の一部としてエンコードしてないかもしれない。なので、GETによるフォームをサポートしてないかもしれないので注意されたし。(JSR 168 のときも J2 ではオプションを指定しないと、GETが取れない気がする)

ポートレットURLが必要とするURLを生成するECMAスクリプトかもしれないから、ポートレットがクライアントで単純にクエリーパラメータを追加するなと言っている。

今日はここまで・・・(進んでない)。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です