我是Karaf的新手,我的任务是在Karaf容器中使用Hibernate实现JPA。我认为一个好的起点是JBoss容器管理持久性的示例演示代码。我在这个演示/示例(managed-jpa-1.0.0.jar)中构建了jar文件,下载了Karaf 4.1.0,并尝试按照几个步骤运行与H2数据存储区交互的示例。
根据示例提供的README,我需要在Karaf控制台中执行以下操作:(版本设置为" 5.0.0.Final")
带有演示的features.xml文件显示了对H2数据库包和蓝图文件的依赖性。它需要功能"交易"," jpa"和" jndi"。
看起来前三个命令执行没有问题,但最后一个"功能:安装hibernate-osgi-managed-jpa"在控制台中显示错误
执行命令时出错:无法解析root:缺少需求[root] ...
bundle:diag managed-jpa显示以下内容: 缺少依赖项: (&(objectClass = org.apache.aries.blueprint.NamespaceHandler)(osgi.service.blueprint.namespace = \ http://list.apache.org/xmlns/jpa/v1.0.0))(&(objectClass) = org.apache.aries.blueprint.NamespaceHandler)(osgi.service.blueprint.namespace = \ http://riss.apache.org/xmlns/transactions/v1.0.0))
不能安装JPA和Transaction吗?
我试图解决
仍然是依赖项的问题: 缺少依赖项: (及(objectClass的= org.apache.aries.blueprint.NamespaceHandler)(osgi.service.blueprint.namespace = \ HTTP://aries.apache.org/xmlns/jpa/v1.0.0))
目前还不确定我遗漏了什么。
答案 0 :(得分:0)
尝试将blueprint.xml中的命名空间从“ http://aries.apache.org/xmlns/jpa/v1.0.0”更改为“ http://aries.apache.org/xmlns/jpa/v2.0.0”