Java 没有数据绑定播放框架2.5.3的相应访问器
我想将用户数据保存到数据库播放2.5.3版 我得到这个错误: JSR-303验证属性“first_name”没有相应的数据绑定访问器-请检查您的DataBinder的 配置(bean属性与直接字段访问)] 我的模型课Java 没有数据绑定播放框架2.5.3的相应访问器,java,data-binding,playframework,playframework-2.3,ebean,Java,Data Binding,Playframework,Playframework 2.3,Ebean,我想将用户数据保存到数据库播放2.5.3版 我得到这个错误: JSR-303验证属性“first_name”没有相应的数据绑定访问器-请检查您的DataBinder的 配置(bean属性与直接字段访问)] 我的模型课 @Entity public class UserRegisterModel extends Model { @Id @GeneratedValue protected Long ID; @Constraints.Required prot
@Entity
public class UserRegisterModel extends Model
{
@Id
@GeneratedValue
protected Long ID;
@Constraints.Required
protected String first_name;
protected String last_name;
protected String user_name;
@Constraints.Required
protected String password;
protected String password_confirmation;
@Constraints.Email
@Column(unique = true)
protected String email;
}
public Result submitUserRegistrationForm()
{
play.data.Form<UserRegisterModel> form = play.data.Form.form(UserRegisterModel.class).bindFromRequest();
UserRegisterModel register = form.bindFromRequest().get();
}
控制器类
@Entity
public class UserRegisterModel extends Model
{
@Id
@GeneratedValue
protected Long ID;
@Constraints.Required
protected String first_name;
protected String last_name;
protected String user_name;
@Constraints.Required
protected String password;
protected String password_confirmation;
@Constraints.Email
@Column(unique = true)
protected String email;
}
public Result submitUserRegistrationForm()
{
play.data.Form<UserRegisterModel> form = play.data.Form.form(UserRegisterModel.class).bindFromRequest();
UserRegisterModel register = form.bindFromRequest().get();
}
公共结果提交注册表单()
{
play.data.Form Form=play.data.Form.Form(UserRegisterModel.class).bindFromRequest();
UserRegisterModel register=form.bindFromRequest().get();
}
我还想匹配密码和符合密码。我应该在模型或控制器中执行此操作
您能提供一些表单验证的示例代码(模型、控制器)吗?如评论中所述,您必须添加play enhancer,如下所述: 此外,增强剂仅在以下条件下起作用: 增强器查找Java类上的所有字段:
- 公开
- 它们是非静态的
- 是非最终的
因此,这里有两个选项:保持字段
受保护
,编写自己的getter和setter,或者公开,让增强器生成其他库(如表单绑定)所需的getter和setter。是否添加get和set?现在不添加。我读到它们是自动生成的。您是否配置了播放增强功能?否,我如何配置它。@PCF,请查看我的答案。