JPA EntityListener和持久性归档

时间:2015-04-29 06:44:04

标签: java hibernate maven java-ee jpa

我们有一个只包含Entities和persistence.xml的持久性存档。我们有一个包含ejb内容的ejb模块。

现在针对特定用例,我们需要添加一个EntityListener,它可以访问服务层中的某些EJB。

ejb模块依赖于持久性模块。但是,要在Entity中声明侦听器,持久性模块需要知道ejb模块中的类。循环依赖是不可能的,并且拥有仅包含JPA侦听器的第三个模块也会导致循环依赖。

所以我看到的唯一选择是将ejb模块和持久存档合并到一个模块中。但是,通过这种方式,我们失去了在另一个应用程序中使用持久性存档来连接到远程接口而无需携带整个ejb jar内容的灵活性。

关于如何解决这个问题并保持模块化的想法(单独的ejb和持久性模块?)。

我们谈论的是JEE7应用程序。

1 个答案:

答案 0 :(得分:0)

一个想法是使用Source-Control-Management(git / svn / cvs)导入EJB项目中的实体包(+ persistence.xml文件)。这样,您可以更灵活地定义它们的方式/方式。 在SVN中,您有svn:externals。对于git,请查看this answer