2

Spring3.1.1.RELEASEを使用しています。モデルのjava.util.Dateフィールドの無効な日付形式に対して表示されるエラーメッセージをカスタマイズしたいと思います。これがモデルです…</p>

public class ContractForm
{
    …
    private Date activationDate;

    private Date expirationDate;

    …

}

プロパティバンドルにこの設定があります…</p>

typeMismatch.ContractForm.activationDate=The activation date format should be of the form MM/dd/yyyy
typeMismatch.ContractForm.expirationDate=The expiration date format should be of the form MM/dd/yyyy

そして、カスタムjava.util.Dateエディターをコントローラーに登録しました…</ p>

@InitBinder
public void initBinder(WebDataBinder binder) {
    final DateFormat dateFormat = new SimpleDateFormat(Contract.DATE_FORMAT);
    dateFormat.setLenient(false);
    binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, true));
    ...        
}

ただし、無効な日付でフォームを送信すると、目的のエラーメッセージが表示されず、代わりに次のようなメッセージが表示されます。'タイプjava.lang.Stringのプロパティ値をプロパティの必須タイプjava.util.Dateに変換できませんでしたActivationDate; ネストされた例外はjava.lang.IllegalArgumentExceptionです:日付を解析できませんでした:解析できない日付: "02012013" '

希望のエラーメッセージを取得するにはどうすればよいですか?

4

0 に答える 0