我目前遇到的問題是我的entityManager在執行部署在耳朵中的web應用程序執行期間未能注入。Weblogic Ear部署未能注入實體管理器
耳的設置如下:
/META-INF -application.xml(EJBJar + WAR)
-MANIFEST.MF
-weblogic-application.xml中(目前只是默認一個蝕 生成)
/APP-INF
-lib
-EJBClientJar(接口+的POJO)-other jars -classes
EJBJar
/META-INF
-persistence.xml
/SRC
-Annotated類
WAR
- 服務類
類如下:
DAO inside EJBJar
@Stateless(mappedName="AwesomeBean")
public class Awesome implements AwesomeRemote //AwesomeRemote in EJBClientJar
{
@PersistenceContext
EntityManager em;
}
public class AwesomeService //Inside WAR
{
AwesomeRemote = context.lookup (Awesome.path.to.AwesomeRemote) //Is found
}
調用堆棧如下:
戰爭 - > EJBClientJar - > EJBJar
在EJB jar上實體管理器爲空。問題是如何確保PersistenceContext被注入? AwesomeRemote接口上的JNDI查找成功。界面上沒有註釋。
請嘗試在PersistenceContext註釋中指定unitName? – 2011-04-29 22:47:59
也失敗了,謝謝你的建議 – Woot4Moo 2011-04-30 14:31:12
你怎麼知道它是空的?例外?你可以發佈嗎? – 2011-05-02 19:13:38