フォームを作成しようとしていますが、これはタイムスタンプ付きのオブジェクトを返送します。今、入力フォーマットは[yyyy-MM-dd HH:mm:ss]でなければなりません。タイムスタンプを[dd.MM.yyyy HH:mm]の形式で入力したいのですが、どうすれば入力フォーマットを変更できますか?春の日付変更の入力形式
オブジェクトクラス:
public class Test {
private Timestamp dateStart;
public Timestamp getDateStart() {
return dateStart;
}
public void setDateStart(Timestamp dateStart) {
this.dateStart = new Timestamp(dateStart.getTime());
}
}
コントローラ方法:
@RequestMapping(value="test", method = RequestMethod.POST)
public View newTest(@ModelAttribute("test") Test test, Model model) {
//save the Test object
}
JSPフォーム:
<form:form action="service/test" method="post" modelAttribute="test">
<form:input type="text" path="dateStart" />
</form:form>
Iは、フォーマットが正しくない場合、このエラーが発生します。
Field error in object 'test' on field 'dateStart': rejected value [22.05.2012 14:00]; codes [typeMismatch.test.dateStart,typeMismatch.dateStart,typeMismatch.java.sql.Timestamp,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [test.dateStart,dateStart]; arguments []; default message [dateStart]]; default message [Failed to convert property value of type 'java.lang.String' to required type 'java.sql.Timestamp' for property 'dateStart'; nested exception is org.springframework.core.convert.ConversionFailedException: Unable to convert value "22.05.2012 14:00" from type 'java.lang.String' to type 'java.sql.Timestamp'; nested exception is java.lang.IllegalArgumentException: Timestamp format must be yyyy-mm-dd hh:mm:ss[.fffffffff]]
多分これがお手伝いします。 http://stackoverflow.com/questions/10565481 –
本当にありがとう、私は他のユーザーのための答えを投稿します。 – lmazgon