SAStruts/JSP

設計

設計としては View 側のJSP は Action にくっついているものであり、他の Action から呼んで再利用するようなものではない。

SAStruts の JSP

基本的に普通に JSP だったり Struts のタグライブラリなのだが SAStruts 用の tag や便利な EL の関数もあるのでこれもあわせて

単純に変数を出力する

ドル括弧で括ると action から渡された変数の中身を出力できる

${hoge}

値をHTMLエスケープして出力する

hメソッドを使うことによって実体参照に置き換えて出力してくれる。

${f:h(hoge)}

エラーメッセージを出力する

バリデータでエラーが出た場合に押し返された場合そのメッセージを出力することができる

<html:errors />

foreachでコレクションをループする

action側で

public List<HogeDto> hogeDtoList;

としていたならば

<c:forEach var="hoge" items="hogeDtoList">
    ${ hoge.piyo }
</c:forEach>

ではなぜか1周だけループするという謎の挙動になる

↑ではなくて、こう書く

<c:forEach var="hoge" items="${ hogeDtoList }">
    ${ hoge.piyo }
</c:forEach>

JSP で使う EL式 を Java側でも使いたい

この f:h のようなやつを Java コード側でも使いたい

<p>${f:h(hoge)}</p>

S2Functions に静的メソッドとして実装されているのでそれを使えばよい。

Tags

java/sastruts/jsp/start.txt · 最終更新: 2020-10-15 11:42 by ore