Database [运行时异常:没有绑定到此线程的EntityManager。请尝试使用@play.db.jpa.Transactional注释您的操作方法]

Database [运行时异常:没有绑定到此线程的EntityManager。请尝试使用@play.db.jpa.Transactional注释您的操作方法],database,playframework,Database,Playframework,当我尝试使用sql语句insert将数据保存到db中时,这就是问题所在 我的职能是: public void save(){ JPA.em().persist(this); } 及 公共静态结果已注册(){ formrequestform=Form(User.class).bindFromRequest(); if(requestform.hasErrors()){ 返回badRequest(“fehlerhafte-eingabe!”).as(“text/html”); }否则{ U

当我尝试使用sql语句insert将数据保存到db中时,这就是问题所在

我的职能是:

public void save(){
    JPA.em().persist(this);
}

公共静态结果已注册(){
formrequestform=Form(User.class).bindFromRequest();
if(requestform.hasErrors()){
返回badRequest(“fehlerhafte-eingabe!

”).as(“text/html”); }否则{ User=requestform.get(); 字符串fullname=user.fullname; 字符串email=user.email; 字符串密码=user.password; 字符串username=user.username; 新用户(用户名、密码、全名、电子邮件).save(); } 返回重定向(controllers.routes.Application.index()); }

感谢您的帮助

正如调试消息所说,您的方法没有绑定实体管理器,因为它们没有标记为事务

@play.db.jpa.Transactional
public static Result registered() {
此外,如果您使用的是EBean,您可以为您的用户类扩展模型,该类带有许多方便的内置函数,可供数据库使用,请参见此处的文档:

@play.db.jpa.Transactional
public static Result registered() {