EJB3实体 - 加入不同jar文件中的实体

时间:2010-11-29 04:44:18

标签: java ejb-3.0 entity javabeans

我正在尝试使用以下查询对2个实体进行连接 -

String qry = "SELECT o.attr1, o.attr2, o.attr3, r.description FROM AttrEntity o,  DescEntity r WHERE (o.code=r.code)";
Query query = entityManager.createQuery(qry);
resultList = query.getResultList();

问题是AttrEntityDescEnity在不同的jar文件中,因此当我执行查询时,我得到一个异常,说明找不到实体DescEntity。无论如何我可以执行此查询而不修改我的jar文件吗?

2 个答案:

答案 0 :(得分:0)

您可能在其中一个jar中定义了一个持久性单元(可能包含AttrEntity)。在该持久性单元中,您可能已列出属于该PU的类。不确定规范是否允许这样做,但您可以尝试更改包含PU的jar的MANIFEST.MF,添加指向包含DescEntity的另一个jar的“classpath”条目。

但实际上,如果可行,请将其视为UGLY解决方法。适当的解决方案是将它们放在同一个罐子里。

答案 1 :(得分:0)

找到答案 - 我需要将标签 - secondJar.jar添加到第一个jar文件的persistence.xml中。