我在WebSphere 7上使用Eclipse 3.4(又名IBM RAD)构建了一个简单项目。什么是将EJB放入JPA项目的“正确”方式?
我的工作区中有一个EAR项目,一个EJB项目和一个JPA项目。
短版:
在我的EJB项目的EJB是引用我的JPA项目中的EJB,但它给了我一个EJBNotFoundException错误。
将EJB放入我的JPA项目中的“正确”方式是什么?
UPDATE
一位同事告诉我的EJB应在EJB项目,而不是JPA项目。这是我做错了吗?希望对此有第二个意见,谢谢。
长版:
在JPA项目,我有我的实体/域对象(例如Workflow.java)和我有一个DAO(前WorkflowDAO.java。),它被注释为与@Stateless的EJB 。
在EJB项目中,我有一个ejb(例如WorkflowService.java),它用@Stateless标注为@EJB。
WorkflowService.java引用WorkflowDAO像这样:
@Stateless
public class WorkflowService /*...*/
@EJB
private WorkflowDAO workflowDAO; /*...*
的问题是,当我部署到我得到以下错误的服务器:
com.ibm.ejs.container.EJBNotFoundException,具有接口test.WorkflowDAO的EJB在应用程序testEAR中不存在。
任何帮助非常感谢,谢谢!
罗布
所以,你考虑**这**作为你的问题的答案?也许如果这是答案,你至少可以试着解释你是如何解决**你的问题的? – jFrenetic 2012-02-28 20:09:56
我没有解决问题。 TestJPA项目中的EJB仍然不可见,我不得不将它们移动到TestEJB项目。我将这个“答案”标记为“正确”,因为与新简化问题的链接是我必须为我的问题找到解决方案的唯一途径。你的回答(上面)没有帮助;也许是因为你的指令适用于Eclipse 3.5或更高版本。就像我在问题中所说的那样,我使用的是Eclipse 3.4。 – 2012-02-28 21:25:45
关键是你可以等到你找到解决方案,然后发布并接受为答案。你刚刚接受的并不是一个答案。 – jFrenetic 2012-02-29 17:59:00