我正在使用 JBoss 4.2.3 应用服务器。
我有一个当前包含 2 个 EJB (EJB 3) jar 的 EAR。
在主 EJB jar 中,我有带有数据源配置的 persistence.xml 文件。
从辅助 EJB jar 文件中,我可以成功调用在包含 persistence.xml 的主 EJB jar 中定义的 EntityManager 和读\写实体
如果我尝试将实体放在辅助 EJB jar 模块中,然后通过使用主 EJB 中的持久性单元的 EntityManager 将其持久化,则会出现异常:
引起:org.hibernate.hql.ast.QuerySyntaxException: [ENTITY-CLASS-NAME] 未映射
我找到的解决方案是在辅助 EJB 模块中创建另一个 persistence.xml 并更改持久性单元名称。
我不确定我尝试做的是否正确?您能否贡献一下我是否可以通过 EAR 中的多个 EJB 模块共享相同的 persistence.xml(在某种程度上我可以在两个 EJB 模块中都有实体)?