无法使用MYSQL连接play 2.5应用程序 - JPA问题

时间:2017-02-08 12:45:42

标签: mysql jpa jdbc playframework

Application.conf就像这样

db {
  default.jndiName=DefaultDS
  default.driver = com.mysql.jdbc.Driver
  default.url =  "jdbc:mysql://sql6.freemysqlhosting.net:3306/sql6157743" 
  default.username = sql6157743
  default.password = "smEkGrF1Kr"
}

当我尝试创作时 EntityManager em = play.db.JPA.em()它提供错误

  

java.lang.RuntimeException:在上下文中找不到EntityManager。尝试   使用@ play.db.jpa.Transactional

注释你的动作方法

当我用@Transactional注释它时,它会给出错误

  

[CompletionException:java.lang.IllegalStateException:试图删除   EntityManager,但没有设置。]

如果我在 Application.conf 文件中添加 jpa.default = applicationPersistenceUnit 行,则会出错

  

[CompletionException:com.google.inject.ProvisionException:无法执行   规定,请参阅以下错误:

     

1)注入构造函数时出错,   javax.persistence.PersistenceException:没有持久性提供程序   EntityManager名为applicationPersistenceUnit at   play.db.jpa.DefaultJPAApi $ JPAApiProvider。(DefaultJPAApi.java:39)   在   play.db.jpa.DefaultJPAApi $ JPAApiProvider.class(DefaultJPAApi.java:34)   同时找到play.db.jpa.DefaultJPAApi $ JPAApiProvider   找到play.db.jpa.JPAApi       对于参数0,在play.db.jpa.TransactionalAction。(TransactionalAction.java:20)
  找到play.db.jpa.TransactionalAction

     

1错误]

我尝试从Entity Manager Factory和Persistence Unit创建实体管理器,但我的项目中没有任何持久性单元名称甚至persistence.xml文件。我尝试使用持久性工具创建persistence.xml但失败了

EntityManagerFactory factory;
factory = Persistence.createEntityManagerFactory("No persistence unit name I have");
EntityManager em = factory.createEntityManager();

任何解决方案?我只需要在MYSQL的两个表中保存和查询。有什么办法吗?

0 个答案:

没有答案