2012-04-11 44 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,然後完成!

相關問題