| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

「Struts2 generator」の版間の差分

提供: MyMemoWiki
ナビゲーションに移動 検索に移動
(ページの作成:「==Struts2 generator タグ== {{include_html banner_html, "!Struts"}} 繰り返し処理可能な文字列ソースから、イテレータを生成する。 =====…」)
(相違点なし)

2020年2月15日 (土) 07:36時点における版

Struts2 generator タグ

テンプレート:Include html banner html, "!Struts"

繰り返し処理可能な文字列ソースから、イテレータを生成する。

パラメータ
タグ名 必須 デフォルト 評価 内容
count false true イテレータに含まれる最大要素数
separator true true valで両されているセパレータ
val true true 解析されるソース
converter false true 文字列valに含まれる要素を、解析し、オブジェクトに変換するコンバータ
id false true page contextに格納する結果イテレータのID。

1 単純な例
 Generate a simple iterator
 <s:generator val="%{'aaa,bbb,ccc,ddd,eee'}">
  <s:iterator>
      <s:property /><br/>
  </s:iterator>
 </s:generator>
 
This generates an iterator and print it out using the iterator tag.
2 count属性を使用した例
 Generate an iterator with count attribute
 <s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" count="3">
  <s:iterator>
      <s:property /><br/>
  </s:iterator>
 </s:generator>
 
This generates an iterator, but only 3 entries will be available in the iterator
generated, namely aaa, bbb and ccc respectively because count attribute is set to 3
3 id 属性を使用した例
 Generate an iterator with id attribute
 <s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" count="4" separator="," id="myAtt" />
 <%
  Iterator i = (Iterator) pageContext.getAttribute("myAtt");
  while(i.hasNext()) {
      String s = (String) i.next(); %>
      <%=s%> <br/>
 <%    }
 %>
 
This generates an iterator and put it in the PageContext under the key as specified
by the id attribute.
4 comparator 属性を使用した例
 Generate an iterator with comparator attribute
 <s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" converter="%{myConverter}">
  <s:iterator>
      <s:property /><br/>
  </s:iterator>
 </s:generator>
 
 
 public class GeneratorTagAction extends ActionSupport {
 
   ....
 
   public Converter getMyConverter() {
      return new Converter() {
          public Object convert(String value) throws Exception {
              return "converter-"+value;
          }
      };
   }
 
   ...
 
 }
 
This will generate an iterator with each entries decided by the converter supplied. With
this converter, it simply add "converter-" to each entries.

テンプレート:Include html banner html, "!Struts"