我有一个表单对象:
public class UserFormJava {
@NotNull
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
private LocalDateTime dateTime;
public LocalDateTime getDateTime() {
return dateTime;
}
// getter, setter
}
我有一个简单的控制器:
@RequestMapping("/users")
@Controller
public class UserController {
@PostMapping("")
public String postForm(@Valid UserForm userForm, BindingResult bindingResult) {
System.out.println(userForm + " " + bindingResult);
return "/users/form";
}
}
它工作正常。但是userForm如果我像这样在Kotlin中重写UserForm,绑定将不起作用(参数为null`):
open class UserForm(@NotNull
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm") var dateTime: LocalDateTime? = null)
并尝试以相同的方式在Controller中将其绑定:
@PostMapping("")
public String postForm(@Valid UserForm userForm, BindingResult bindingResult) {
System.out.println(userForm + " " + bindingResult);
return "/users/form";
}
为什么绑定失败以及如何解决?
慕容3067478
相关分类