【发布时间】:2015-07-08 05:23:04
【问题描述】:
我使用 EclipseLink 作为我的 JPA 实现(在 KARAF 中)。并且使用了以下 jar:-
install -s mvn:org.eclipse.persistence/org.eclipse.persistence.antlr/2.5.0
install -s mvn:org.eclipse.persistence/org.eclipse.persistence.asm/2.5.0
install -s mvn:org.eclipse.persistence/org.eclipse.persistence.core/2.5.0
install -s mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/1.1
install -s mvn:org.osgi/org.osgi.compendium/4.2.0
install -s mvn:org.osgi/org.osgi.enterprise/4.2.0
org.eclipse.gemini.dbaccess.derby_1.0.0.M1-incubation.jar
org.eclipse.gemini.jpa.weaving_1.0.0.RC1.jar
org.eclipse.gemini.jpa_1.0.0.RC1.jar
我的persistence.xml 是:-
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0"
xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
<persistence-unit name="resource" transaction-type="RESOURCE_LOCAL">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<class>myPkg.entity.Resource</class>
<properties>
<property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver"
/> <property name="javax.persistence.jdbc.url" value="jdbc:derby:DB;create=true"
/>
<!-- <property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.ClientDriver" />
<property name="javax.persistence.jdbc.url" value="jdbc:derby://localhost:1527/D:\DB;create=true" /> -->
<property name="javax.persistence.jdbc.user" value="test" />
<property name="javax.persistence.jdbc.password" value="test" />
<property name="eclipselink.logging.level" value="OFF" />
<!-- EclipseLink should create the database schema automatically -->
<property name="eclipselink.ddl-generation" value="create-tables" />
<property name="eclipselink.ddl-generation.output-mode"
value="database" />
<property name="connection.autocommit" value="false" />
<property name="eclipselink.persistence-context.flush-mode" value="commit" />
<!-- <property name="eclipselink.allow-zero-id" value="true"/> -->
</properties>
</persistence-unit>
</persistence>
但gemini.dbaccess.derby_1.0.0.M1-incubation jar remians 处于已安装状态以及 gemini.jpa.weaving jar 仍处于已解决状态。
重新启动gemini.dbaccess.derby_1.0.0.M1-incubation 会出现以下错误:-
Reason: Missing Constraint: Import-Package: org.apache.derby.client.am; version="0.0.0"
我的应用程序给出了以下错误:-
Could not find data source factory in registry: org.apache.derby.jdbc.ClientDriver
我是在 OSGI 中使用 eclipseLink 的新手,我在这里缺少什么?
【问题讨论】:
标签: jpa osgi eclipselink karaf eclipse-gemini