• 締切済み

JSPファイルから、ActionFormの定数を取得することは可能でし

JSPファイルから、ActionFormの定数を取得することは可能でしょうか? 具体例は以下の通りです。 <ActionForm> public class TestActionForm { /** * ステータス 有効 */ public static final int STATUS_VALID = 0; /** * ステータス 無効 */ public static final int STATUS_INVALID = 1; /** * ステータス */ private int status; /** * ステータスを取得します。 * @return ステータス */ public int getStatus() { return status; } /** * ステータスを設定します。 * @param status ステータス */ public void setStatus(int status) { this.status = status; } } <JSPファイル> <html:form action="/TestAction"> <nested:write property="status" /> ← ステータスの値は普通に取れるが、 <nested:write property="STATUS_VALID" /> ← 定数を取得するにはどうすればいいかが分からない。 </html:form>

みんなの回答

  • hatimiti
  • ベストアンサー率68% (26/38)
回答No.3

ActionForm に定数取得用の getter を用意したらできないでしょうか? public int getStatusValid() { return STATUS_VALID; } ---- JSP --- <nested:write property="statusValid" /> 検証していないのでわかりませんが、、

javakori
質問者

お礼

なるほど。 その発送はなかったです。 参考にさせていただきます。

回答No.2

ActionForm はreset()とvalidate()が追加された JavaBean なので、全てのフィールドにはゲッターとセッターが必要です。 定数にはセッターが定義できないので、定数をActionFormのメンバに持たせる発想そのものが、仕様に違反しています。

javakori
質問者

お礼

ご回答ありがとうございます。

  • nooper
  • ベストアンサー率75% (3/4)
回答No.1

スクリプトレットでも良いのであれば。。。 <%@page import="TestActionForm" %> <%= TestActionForm.STATUS_VALID %> で、どうでしょう? (未検証です)

javakori
質問者

お礼

ご回答ありがとうございます。 できればスクリプトレットは使いたくないですね。

関連するQ&A