在我的示例中,嵌套对象时忽略@DateTimeFormat
注释:
class Person {
private Date birthdate;
// other fields
@DateTimeFormat(pattern="dd.MM.yyyy")
public Date getBirthdate(){
return birthdate;
}
// Other getters/setters
}
我有一个可以嵌套这些物品的课程。
class PersonGroup {
private Person person1;
private Person person2;
// other fields
@Valid
public Person getPerson1(){
return person1;
}
// also tried without @Valid-Annotation
public Person getPerson2(){
return person2;
}
// Other getters/setters
}
我在PersonGroup
中为我的模型添加了@Controler
类型的对象 - 这样的方法:
model.addAttribute("myGroup", filledPersonGroup);
在JSP中,我使用打印嵌套变量:
<form:form modelAttribute="myGroup" action="..." >
<form:input path="person1.birthdate" >
<form:input path="person2.birthdate" >
...
</form:form >
但不幸的是,输入字段中的日期值格式不正确(但原则上显示日期。)。
当我直接将类Person
的实例添加到模型时,它可以工作。
有谁能告诉我怎么办?我希望我的嵌套对象的日期格式正确。
我使用Spring 4.1.1-RELEASE
答案 0 :(得分:1)
您是否尝试过注释字段而不是方法?
class Person {
@DateTimeFormat(pattern="dd.MM.yyyy")
private Date birthdate;
// other fields
public Date getBirthdate(){
return birthdate;
}
// Other getters/setters
}