いまさらながらStrutsを勉強しています。
すでにEOLを迎えており、近年にも脆弱性の問題で話題となりましたが、社内でStrutsを使う必要があり、よくわからないままにいろいろ手を動かしながらやっております。

jspでlogic:iterateを使ってコレクションの値をフォームのセレクトボタンに当てはめたく、いろいろやった覚書です。

次のようなコレクションをセレクトボタンに当てはめたい、というような場合、

  • hogeList : ArrayList<HogeModel>
    • request に setAttribute(“hogelist”, hogeList) としています。
  • HogeModelクラス(FQCN: org.myapp.model.HogeModel)
    • – id : int
    • – name : String
      • それぞれsetter、getterがあります。
  • 対応するActionFormのプロパティ
    • selectid : int
  • セレクトボタンのデフォルト値
    • requestにsetAttribute(“default”, fuga) とされているオブジェクトのidプロパティ

これがHTMLに変換されると、

となってブラウザに返ってきます。

<html:select property=”..” ..

は、<select name=”..” ..

に置き換わり、選択値である、value=”${default.id}” は、

対応する<option value=”..” にselected=”selected” という属性が付加されます。

カテゴリー: JavaJava 覚書

0件のコメント

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です