2012-04-11 45 views
4

我写了一个封装了我所有实体的JPA项目。由于在REST-Service项目中也需要这些实体,因此我将JPA-Project导出为* .jar并将其包含在REST项目中(没有JPA-Facet)。在JAX-RS REST服务应用程序中包含JPA项目

因此,一切都可以部署在服务器上,我可以从前端到达REST服务,但只要EntityManager应该在类中注入,什么都不会发生。 这会导致NullPointerExceptions,因为entityManager不存在。

要注入的类别标记为@Stateless,而entityManager包含@PersistenceContext注释。

所以问题是:注入在嵌套项目中工作还是必须手动实例化entityManager?

在此先感谢!

另外,我使用Glassfish的v 3.1.2和JPA 2.0

+0

如果您使用NetBeans 6.9+,则会有一个向导执行您正在查找的任务,包括实体类,泽西注释,无状态DAO,注入EntityManager。这是值得下载这个IDE的努力。当你理解了逻辑后,你可以继续使用你的首选IDE – perissf 2012-04-11 12:25:10

+0

现在我正在使用eclipse indigo,但是我会立即下载Netbeans并尝试它。 – Kai 2012-04-11 12:28:14

+0

本教程将帮助您:http://netbeans.org/kb/docs/websvc/rest.html – perissf 2012-04-11 12:34:30

回答

4

要回答我的问题。 在netbeans的帮助下,我收集了一些信息,这些信息让我轻易地改变了我的项目结构。

这是我做了什么:

  • 给REST项目的JPA小面
  • 存储在该项目在PU链接到包含罐子
  • persistence.xml中实体

这样我所要做的就是将注入的entityManager传递给entity-project,然后完成!

相关问题