Apcoordinator ユーザーズガイド
目次 前ページ次ページ

第3部 Webアプリケーションの開発> 第15章 UJIタグを使ったプログラミング> 15.2 画面部品タグ

15.2.3 画面部品タグのネスト

表のセル、ツリーのノード・リーフ、リストのエレメントでは、項目の値としてデータBeanを返すことができます。このデータBeanに対してさらに画面部品タグを適用することで、画面部品タグをネストさせることができます。 付録A.2のサンプルの詳細画面は、リストのデータBeanを複合Beanで受け取る例です。 この方法を使うことにより、以下が可能です。
・表の中のリストなど、階層の深いデータを表現する。
・データBeanの繰り返しを表現する。
画面部品タグをネストする場合、下位の画面部品タグを部品として別の入出力ページとすることができます。 この場合、上位の画面部品タグのレンダラ中にアトリビュートなしのuji:includeを記述します。このように指定することで、領域名を使用せずに、上位の画面部品から渡されたデータBeanを使用してページマップを参照し、インクルードの動作をします。 インクルードされる側の下位の入出力ページは、全体をuji:includedBodyタグで囲む必要があります。 使用例を示します。
・インクルードする側

<uji:list bean="body" property="listData" >
   <uji:listRenderer type="element">
      <uji:include />
   </uji:listRenderer>
</uji:list>

・インクルードされる側

<%@ page contentType="text/html; charset=shift_jis" %>
<%@ taglib uri="uji-taglib" prefix="uji" %>
<uji:includedBody>
    <uji:composite>
      <uji:compositeRenderer>
         ....
      </uji:compositeRenderer>
    </uji:composite>
</uji:includedBody>

この例ではリスト画面部品の中でuji:includeを使用しているので、リスト項目のデータBeanと表示モードに従ってページマップで指定された入出力ページがインクルードされます。 インクルードされたページではuji:includedBodyタグで囲むことによって、リスト項目のデータBeanが利用可能となり、uji:compositeでデータBeanを引き継ぐ、uji:getPropertyを使用するなどの方法で画面項目を設定します。
目次 前ページ次ページ

All Rights Reserved, Copyright © 富士通株式会社 2000-2005