PGBox
P
G
Box

bean writeタグ

beanタグのメニューへ戻る



使用した環境
JDK 6 Update 11
struts 1.3.10

beanに保持された値の出力を行います。


<や>などのhtml特殊文字は自動的にエスケープされますので、安全に文字列を表示する事が可能です。また、フォーマット機能も備わっています。
属性必須意味
name表示する対象のbean名を指定する。
property表示する対象のbeanのプロパティ名を指定する。
scope表示する対象のbeanを取得するスコープを指定する。page・request・session・applicationのいずれかを指定。省略時は自動的にbeanが存在するスコープが検索される。
filter<や>などのhtml特殊文字のエスケープを行うかどうかをtrue/falseで指定する。デフォルトはtrue(htmlエスケープを行う)
formatフォーマット文字列を指定する。使用できる形式は、数値及び日付用のフォーマット。(java.text.DecimalFormatとjava.text.SimpleDateFormatで使用可能なフォーマット文字列。)
ignorenameとpropertyで指定されたプロパティが存在しなかった場合にエラーとするかどうかを指定する。trueとした場合に対象プロパティが存在しなくてもエラーとならない。デフォルトはfalse(beanが取得できなかった場合にエラーとなる)
formatKeyフォーマット文字列をメッセージリソースから取得する場合に、キーを指定する。
bundleメッセージリソースを取得するリクエスト/セッションバインド名を指定。



例えば、Formが以下のように定義されており
public class SampleForm extends ActionForm {
    
    private String message;
    
    private Date now;

    private int number;
    
    ※ 以下、setter, getter
}


Actionでは以下のように処理したとします。
public ActionForward execute(ActionMapping mapping, ActionForm form0, ...
    SampleForm form = (SampleForm) form0;
    
    form.setMessage("メッセージ");
    form.setNow(new Date());
    form.setNumber(1234567);
    
    return mapping.findForward("success");
}

これらをhtml出力するには、JSPで以下のようにします。
    <bean:write name="SampleForm" property="message" /><br />
    <bean:write name="SampleForm" property="now" format="yyyy/MM/dd HH:mm:ss" /><br />
    <bean:write name="SampleForm" property="number" format="###,###,###" /><br />

実行結果は以下のようになります。
メッセージ
2009/07/18 20:52:27
1,234,567





beanタグのメニューへ戻る