OSGI 捆绑包停止时清理 openJPA

Cleanup of openJPA when OSGI bundle stops

我有一组 OSGi 包,它们在 karaf 中使用 openjpa 来访问 Postgres 数据库。在开发过程中,我需要频繁地停止、更新和重启 bundle。虽然没有日志消息,但在重新部署周期后我无法连接到服务。如果我停止 karaf 实例并重新启动,我能够成功连接到包。

我"think"这是因为没有清理JPA资源。

所以我的问题是当 JPA 持久性包停止时,需要进行哪些清理工作?

如果你使用 blueprint jpa,你应该不需要自己做任何清理工作。

我认为您遇到了这个错误 https://issues.apache.org/jira/browse/ARIES-1270。 不幸的是,我还没有找到它的原因。因此,如果有人能抽出时间研究一下,那将大有帮助。