ポートレット JSP ファイルから構成オブジェクトへのアクセス
ポートレット構成オブジェクト (たとえば、PortletData
および PortletPreferences) に属性を追加し、属性を追加、変更、または削除するコントロールをポートレット JSP ファイルに追加します。また、属性にアクセスするコントロールを挿入するか、ポートレット JSP ファイル内の既存のコントロールに属性をバインドします。
IBM® ポートレット API および JSR 168 ポートレット API は、ポートレット・オブジェクト用のデータをカプセル化するポートレット構成オブジェクトを定義します。
たとえば、IBM ポートレット API は、コンクリート・ポートレット と組み合わせるとコンクリート・ポートレット・インスタンス を定義する、PortletData オブジェクトを定義します。
JSR 168 ポートレット API では、PortletPreferences オブジェクトが、ポートレット設定と組み合わせると、ポートレット・エンティティー を定義します。
ポートレット構成オブジェクトとその使用法の詳細については、「チュートリアル素材集」()
の「ポートレット API 間の相違の検査」チュートリアルを参照してください。
ポートレット JSP ファイルの「ページ・データ」ビューを使用して、次の手順を実行します。
- 次にリストされているポートレット構成オブジェクト・タイプに属性を追加する。
- IBM ポートレット API プロジェクトの場合
- PortletApplicationSettings
- PortletSettings
- PortletData
- User
- JSR 168 ポートレット API プロジェクトの場合
- PortletPreferences
- USER_INFO
- JSP ファイルにコントロールを挿入または追加して、属性の値を表示、追加、変更、または削除する。
以下の手順を実行して、属性をポートレット・データ・オブジェクトに追加してから、データを作成、変更、削除、または表示するコントロールを JSP ファイルに追加してください。
- 「プロジェクト・エクスプローラー」ビューでポートレット JSP ファイルをダブルクリックして、そのポートレット JSP ファイルを開く。
- ワークベンチの左下隅に「ページ・データ」ビューを開く。
その隅には複数のスタック・ビューがあるので、「ページ・データ」ビューを表示するには、タブの切り替えが必要になる場合があります。
- 「ページ・データ」ビューで、「ポートレット」を展開する。
- ポートレット構成オブジェクトの 1 つを強調表示する。
- 右クリックし、「属性の追加」を選択する。
- 属性の名前を入力する。
- IBM ポートレット API を使用して選択可能な PortletData 属性の場合は、属性の Java™ の型も選択する。
両方のポートレット API の場合、データ・オブジェクトのその他の型はすべて、Java の型として java.lang.String のみを許可します。
注: PortletData 属性に複雑な (非ストリング) Java の型を使用する場合は、JSP ページに変数をドロップしないでください。
その代わり、次の例のように
<jsp:usebean> タグを使用してください。
<jsp:useBean id="date" class="java.util.Date" scope="request">
<% date = (java.util.Date)portletRequest.getData().getAttribute("date"); %>
</jsp:useBean>
日付 Bean を使用してデータにアクセスすることができます (例:
${date.year})。
PortletData オブジェクトに変数を保管するには、ポートレットが編集モードであり、次のコード、またはそれと同等なものを呼び出す必要があります。
<% portletRequest.getData().setAttribute("date", new java.util.Date()); %>
- 「OK」をクリックする。
- 「ページ・データ」ビューで、新しい属性を作成したポートレット構成オブジェクトを展開する。
新しい属性オブジェクトがリストされます。

- 「ページ・データ」ビューから、エディター・エリア内の JSP ファイルに、属性オブジェクトをドラッグする。
「レコードの挿入」ウィザードが開きます。

- このウィザードの「データ・コントロールの構成」ページで、「コントロールの作成対象」の下で次の選択項目の 1 つを選択する。
- 既存レコードの表示 (読み取り専用)
- このオプションは、属性の値を表示するコードを提供します。
「表示するフィールド」ボックスにリストされている属性ごとに、ドロップダウン・メニューから「コントロール・タイプ」を選択して、その属性が表示される方法を選択できます。
選択項目は次のとおりです。
- 出力フィールド
- 出力リンク (ハイパーリンク内の出力フィールド)
- 既存レコードの更新
- このオプションは、「実行」ボタンと「削除」ボタンがある、属性の値を変更するためのフォームを提供します。
「表示するフィールド」ボックスにリストされている属性ごとに、ドロップダウン・メニューから「コントロール・タイプ」を選択して、その属性が表示される方法を選択できます。
選択項目は次のとおりです。
- 入力フィールド
- コンボ・ボックス
- 出力フィールド
- 出力リンク (ハイパーリンク内の出力フィールド)
- 新規レコードの作成
- このオプションは、「実行」ボタンがある、属性を作成するためのフォームを提供します。
「表示するフィールド」ボックスにリストされている属性ごとに、ドロップダウン・メニューから「コントロール・タイプ」を選択して、その属性が表示される方法を選択できます。
選択項目は次のとおりです。
- 「表示するフィールド」の下のリストから、ページに追加する属性を選択する。
- 「オプション」をクリックして、次の値を設定する。
- ボタン: 「ボタン」タブを使用して、「実行」ボタンおよび「削除」ボタンを選択または選択解除し、ボタンのラベルを提供します。
「ボタン」タブは、更新および作成オプションのみに表示され、表示オプションでは表示されません。
「削除」ボタンは、更新オプションでしか選択できません。
- ラベル・フォーマット: 「ラベル・フォーマット」タブを使用して、位置合わせ (LEFT、RIGHT または CENTER) を選択します。
次の選択項目もあります。
- 「各ラベルにコロンを追加する」。
デフォルトでは、このオプションはオンです。
- 「各ラベルの先頭文字を大文字にする」。デフォルトでは、このオプションはオンです。
- 拡張: 「拡張」タブを使用して、次のオプションを設定します。
- 深さ。
この値は、表示する属性を検索するための、オブジェクト階層の深さを指します。
たとえば、1 つのオブジェクトの配列フィールドに、もっと多くのオブジェクトが含まれ、それらのオブジェクトにもっと多くの配列やオブジェクトが含まれる場合があります。
デフォルトの深さの値は 3 です。
- 「デフォルトの深さとして使用」を選択して、深さの値をデフォルトとして使用します。
デフォルトでは、このオプションはオフです。
- 「データ・コントロールのみを作成」を選択して、基礎コードを作成し、ラベルを省略します。
デフォルトでは、このオプションはオフです (ラベルが作成されます)。
- 「OK」をクリックして、オプションを保管する。
- 「完了」をクリックして、JSP ファイルにコントロールを追加する。
JSP ファイルに属性のコントロールを追加したい場合は、「ページ・データ」ビューでその属性を右クリックし、「新規コントロールの挿入」を選択してください。