jpa 的未知命名空间 - ServiceMix

Unknown namespace for jpa - ServiceMix

我正在尝试遵循一个简单的教程,使用蓝图将一个简单的 CRUD 界面公开为 REST 服务 github link to tutorial code

部署到 serviceMix 时,出现以下错误:

java.lang.IllegalArgumentException: Unknown namespace for jpa: http://cxf.apache.org/schemas/configuration/cxf-beans.xsd

不知道为什么,我安装了和教程一样的featuresfeatures

和我一样maven dependenciesdependencies

我的bundle:list给出了以下list of bundles

bundlesstate:failure 由于这个问题而失败

有什么想法吗?

更新 1:

blueprint的内容blueprint

我也在使用 blueprint-maven-plugin 生成以下 generated blueprint

更新 2:

按照 Christian Schneider 的建议,安装 aries-jpa 2.5.0 解决了问题,但发生了一件奇怪的事情: 之前,当我安装 2.3.0 版本时,我安装了以下 aries 相关包:

254 | Active  |  80 | 2.3.0 | Apache Aries JPA Container API
255 | Active  |  80 | 2.3.0 | Apache Aries JPA blueprint
256 | Active  |  80 | 2.3.0 | Apache Aries JPA container
257 | Active  |  80 | 2.3.0 | Apache Aries JPA support

现在我有了 2.5.0,执行 bundle:list

时不再显示这些包

feature:list 显示如下

jpa| 2.5.0|| Started| aries-jpa-2.5.0| OSGi Persistence Container

所以问题是,我是否应该担心这些捆绑包不再显示?

感谢蓝图内容。我的第一个答案走错了路。

错误原因是the issue ARIES-1600 in aries jpa。此问题已在 Aries JPA 2.5.0 中修复。您可以通过将此功能回购 url 添加到您的功能来使用它:

mvn:org.apache.aries.jpa/jpa-features/2.5.0/xml/features

如果您从命令行安装,您可以使用:

功能:repo-add aries-jpa 2.5.0