2014-10-09 15 views
0

我已经安装了Karaf和OpenJPA并对其进行了测试,如here所述。我安装了examplejpa,它工作正常,没有任何错误。 但是,我需要在另一个Karaf包中使用此jpa(Person类和PersonService接口)。换句话说,我已经安装了examplejpa。现在我想创建一个新的bundle,它可以通过examplejpa bundle来访问数据库。 我该怎么做这件事?在不同的包(Apache Karaf和OpenJPA)中实现数据库JPA和JPA客户端

一般来说,有没有办法在不同的bundle中实现数据库JPA和JPA客户端类?

亲切的问候。

回答

0

最简单的方法是从您的examplejpa项目中公开一个服务并从新的包中访问此服务。

在蓝图中,examplejpa项目,服务“personService”声明:

<reference id="rpersonService" interface="net.lr.tutorial.karaf.db.examplejpa.PersonService" /> 

<service ref="personService" interface="net.lr.tutorial.karaf.db.examplejpa.PersonService" /> 

您可以通过对它的引用在其他包重用此服务

之后,你可以注入,提及一类的变量:

<bean id="myBean" class="my.new.package.MyClasses"> 
    <property name="myPersonService" ref="rpersonService" /> 
</bean> 

不要忘记在你的pom中对这个项目有一个依赖,并导入适当的包。

相关问题