機能説明

動的にテーブルを生成するタグです。

list属性で指定された名前でRequestまたはSessionからリストを取得し、そのリスト内のデータをバインドしてテーブルを生成します。

ページングを利用すると、バインドされたデータを1つのテーブルで表示せずに、複数のページに分割して出力するようになります。

このタグは<CellDataSelector>タグ、<ColumnDataSelector>タグ、<RowDataSelector>、<Sorting>タグ、<LineHighLight>タグのボディに指定することができます。

注意事項:
* テーブルの列情報は、<Column>タグで指定しなければなりません。
* list属性により取得されるリストは、java.util.List型でなければなりません。
* リスト内の要素は、JavaBeansの規約に従ったオブジェクト、またはjava.util.Map型のオブジェクトでなければなりません。

属性一覧

注釈 属性名 説明 省略時の動作 実行時評価
必須
application ページング時のページ移動で使用されるアプリケーションID。
JavaEE開発モデルのサービスフレームワークで作成されたアプリケーションの場合に指定します。
-
必須
border 生成されるテーブルの枠線の太さ幅。
デフォルト値は “1”。<TABLE>タグのborder属性と同じです。
-
必須
indexLocation ページング時のページインデックスの表示位置。
属性値は、“top”(テーブル上部)、“bottom”(テーブル下部)、“both”(テーブル上下部)のいずれかを指定します。デフォルト値は、"bottom"
-
必須
indexSize ページング時のページインデックスの最大表示数。デフォルト値は "8" -
必須
list テーブルにバインドされるデータの参照名。
この名前でRequestとSessionからオブジェクトを検索します。
テーブルにバインドされるデータは java.util.List型のオブジェクトでなければなりません。リストの要素はJavaBean規約に従ったオブジェクト、またはjava.util.Map型のオブジェクトでなければなりません。
-
必須
pageSize ページング時のページごとの表示行数。デフォルト値は "10" -
必須
paging ページングを行うかどうかの設定。デフォルト値は “true”。
属性値を“true”に設定すると、テーブルにバインドされるデータは複数のページに分割されて出力されます。
-
必須
scope list属性で指定されたデータを検索するスコープ。属性値、はrequest、sessionのいずれかを指定します。
省略時は、Request、Sessionの順番で検索します。
-
必須
service ページング時のページ移動で使用されるサービスID。
JavaEE開発モデルのサービスフレームワークで作成されたアプリケーションの場合に指定します。
-
必須
styleClass 生成されるテーブルに適用するスタイルのクラス名。<TABLE>タグのclass属性と同じです。 -
必須
tableID 生成されるテーブルのID -
必須
width 生成されるテーブルの幅。デフォルト値は “100%”。<TABLE>タグのwidth属性と同じです。 -

内部タグ

JSP

サンプル

サンプル

サンプル
<pre>
<%@ taglib uri="http://www.intra-mart.co.jp/taglib/util" prefix="imtag" %>
<%@ page contentType="text/html; charset=Shift_JIS" %>
<%@ page import="java.util.*"%>
<%
  // テーブルにバインドされるデータを作成してRequest属性に設定する。
  final List list = new ArrayList();
  for(int i = 0; i < 128; i++) {
    Map map = new HashMap();
    map.put("string", Integer.toString(i));
    map.put("integer", new Integer(i));
    map.put("float", new Float(i)); 
    list.add(map);
  }
  request.setAttribute("list", list);
%>
<html>
  <head>
    <title>DynamicTable Map</title>
  </head>
  <body>
    <imtag:DynamicTable list="list" tableID="table_map" 
      styleClass="test" pageSize="10" indexLocation="both" 
      indexSize="5">
      <imtag:Column attribute="string" title="String" 
        headerClass="header" styleClass="test" sortable="true"/>
      <imtag:Column attribute="integer" title="int" 
        headerClass="header" sortable="true"/>
      <imtag:Column attribute="float" title="float" 
         headerClass="header" sortable="true"/>
    </imtag:DynamicTable>
  </body>
</html>
</pre>
<b>ページ番号の指定:</b>
<br/>
リクエストパラメータに以下のパラメータ名の属性を付加する事で<br/>
ダイナミックテーブルの表示するページを指定することが可能です。<br/>
<br/>
<br/>
[tableIDの値]_page_[list属性の値]<br/>
<br/>
上記サンプルの2ページ目を表示する場合は以下のように指定してください。<br/>
<br/>
<blockquote>
<pre>
<FORM action="foo/bar/teable.jsp">
  <input type="hidden" name="table_map_page_list" value="2">
</FORM>
</pre>
</blockquote>