目次へ

10.2. rootタグ

rootタグはNestedタグライブラリのタグで、共通にアクセスするJava Beanを指定するタグです。ボディ部内にあるNestedタグライブラリのタグは、rootタグで指定したJava Beanに対して共通にアクセスできます。rootタグで指定する属性はnameのみです。

属性名 必須 スクリプト
可能
説明

name

 

Java Beanをスコープから検索するためのキー。検索されたJava Beanがボディ部で共通にアクセスする対象のJava Beanとなります。

続いてBean・HTML・Logicタグライブラリのタグを拡張した形で、Nestedタグライブラリで提供しているタグを以下に示します。name属性を省略できる点を除けば、他の属性は継承元のタグと同じです。

継承元のタグ Nestedタグライブラリにおけるタグ 機能
<bean:define> <nested:define> プロパティ値を変数として定義します。
<logic:empty>
<logic:notEmpty>
<nested:empty>
<nested:notEmpty>
プロパティ値がnull/空文字列/要素数0のコレクションであるかどうか判定します。
<logic:equal>
<logic:notEqual>
<logic:greaterEqual>
<logic:greaterThan>
<logic:lessEqual>
<logic:lessThan>
<nested:equal>
<nested:notEqual>
<nested:greaterEqual>
<nested:greaterThan>
<nested:lessEqual>
<nested:lessThan>
プロパティ値と特定値との比較を行います。
<html:link> <nested:link> パラメータ付きのリンクを生成する。
<logic:match>
<logic:notMatch>
<nested:match>
<nested:notMatch>
プロパティ値に特定の文字列が含まれているかどうか判定します。

<logic:present>
<logic:notPresent>

<nested:present>
<nested:notPresent>
プロパティ値が存在するかどうか判定します。
<bean:write> <nested:write> プロパティ値を出力します。

以下はJava BeanとNestedタグライブラリを用いた例です。LogicのiterateタグとNestedのrootタグを組み合わせて使用しています。

public class SampleBean{

  ...
  public String getText(){
    return(text);
  }
  public int getNum(){
    return(num);
  }
}
...
<% SampleBean[] beans=new SampleBean[10];
   beans[0]=new SampleBean();
   ... %>
<logic:iterate collection="<%=beans %>" id="bean">
  <nested:root name="bean">
    <nested:write property="text" />
    <nested:write property="num" />
  </nested:root>
</logic:iterate>
...

配列に登録されているSampleBeanの値が1つずつ出力されます。

(実習課題1)

以下のWebアプリケーションを作成しなさい。

  • 世界各国の一覧を表示しなさい。少なくとも5つ以上の国を表示する事。またそれぞれの国に関する情報を、少なくとも3つは表示する事。
  • 国の情報の管理はJava Beanで行う事。
  • Nestedタグライブラリを利用する事。

解答例はこちら

↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp