トップ 差分 一覧 ソース 置換 検索 ヘルプ PDF RSS ログイン

SAStrutsのカスタムタグ・EL式


カスタムタグ・EL式

http://www22.atwiki.jp/seasar2/pages/19.html
要素 使用するタグ 種類 備考
フォーム s:form SAStruts
リンク s:link SAStruts
ボタン html:submit Struts クライアントバリデーションを使うのであればs:submit
テキストボックス html:text Struts
ラジオボタン html:radio Struts
チェックボックス html:multibox Struts
セレクトボックス html:select Struts

 値の出力

${f:h(id)}
${f:h(name)} }

 ループ

itemsに指定する変数名と、varに指定する変数名は同じにする必要がある。

<c:forEach var="customerList" varStatus="s" items="${customerList}">
    ${f:h(customerList.customerName)}
</c:forEach>

ループのカウンタを出力したい場合は、varStatusを使用。

<c:forEach var="customerList" varStatus="s" items="${customerList}">
    ${f:h(s.index)}<br>
</c:forEach>

 単純な分岐

<c:if test="${id==10}" >
    ${f:h(id)}
</c:if>

変数がnull or 空かどうかは、emptyを使用。Listが空かどうかを判定するためによく使用する。

<c:if test="${empty customerList}" >
    データがありません。
</c:if>

 複雑な分岐

JSTLのc:chooseを使用。

<c:choose>
  <c:when test="${empty customerList}">
      データがありません
    </c:when>
    <c:otherwise>
       <c:forEach var="customerList" varStatus="s" items="${customerList}">
   ${f:h(customerList.customerName)}<br>
       </c:forEach>
    </c:otherwise>
</c:choose>

 JSPで処理したい

http://www.javaroad.jp/bbs/answer.jsp?q_id=20080718161113777
とりあえず、

pageContext.getAttribute("変数名");

で JSP で値を取得できる。
タグとかでできないことはJSPで処理してしまうのも手かな。

<%
XXX temp = (XXX) pageContext.getAttribute("temp");
out.println(new java.util.Date(temp.date));
%>

[カテゴリ: プログラミング言語 > Servlet & Struts]



  • Hatenaブックマークに追加
  • livedoorクリップに追加
  • del.icio.usに追加
  • FC2ブックマークに追加

最終更新時間:2013年06月02日 23時12分44秒