我有验证类:
public class User {
@Size(min=3, max=20, message="User name must be between 3 and 20 characters long")
@Pattern(regexp="^[a-zA-Z0-9]+$", message="User name must be alphanumeric with no spaces")
private String name;
@Size(min=6, max=20, message="Password must be between 6 and 20 characters long")
@Pattern(regexp="^(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]+)$", message="Password must contains at least one number")
private String password;
public User(String _name, String _password){
super();
name = _name;
password = _password;
}
public String getName(){
return name;
}
public String getPassword(){
return password;
}
public void setPassword(String newPassword){
password = newPassword;
}
}
当我验证值时,我收到消息:
SEVERE: Servlet.service() for servlet osAppServlet threw exception
java.lang.NoSuchMethodException: userAuth.User.<init>()
问题出在哪里?
原文由 Lesya Makhova 发布,翻译遵循 CC BY-SA 4.0 许可协议
消息
java.lang.NoSuchMethodException: userAuth.User.<init>()
表示有人试图调用不带任何参数的构造函数。添加默认构造函数应该可以解决这个问题: