2013-03-06 91 views
0

我已经使用JPA 2.0支持创建了OSGI bundle项目。我使用OpenJpa作为JPA提供程序。当我运行包时,我无法创建OpenJPAEntityManagerFactory。请罚款我用来创建OpenJPAEntityManagerFactory的代码。无法创建OpenJPAEntityManagerFactory

OpenJPAEntityManagerFactory emf = OpenJPAPersistence.createEntityManagerFactory(
         "StudentServiceProvider", 
         "META-INF/persistence.xml"); 

的persistence.xml

<?xml version="1.0" encoding="UTF-8"?> 
<persistence version="2.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_2_0.xsd"> 

    <persistence-unit name="StudentServiceProvider"> 

     <provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider> 
     <class>com.student.serviceprovider.model.Student</class> 

     <exclude-unlisted-classes>false</exclude-unlisted-classes> 

     <properties> 
      <property name="openjpa.ConnectionURL" value="jdbc:mysql://localhost:3306/NYL" /> 
      <property name="openjpa.ConnectionDriverName" value="com.mysql.jdbc.Driver" /> 
      <property name="openjpa.ConnectionUserName" value="root" /> 
      <property name="openjpa.ConnectionPassword" value="root" /> 
      <property name="openjpa.Log" value="DefaultLevel=WARN, Tool=INFO" /> 
      <property name="openjpa.RuntimeUnenhancedClasses" value="supported" /> 
      <property name="openjpa.Log" value="DefaultLevel=WARN, Tool=INFO" /> 

      <!-- To avoid foreign key issues --> 
      <property name="openjpa.jdbc.SchemaFactory" value="native(ForeignKeys=true)" /> 

      <!-- Auto create tables --> 
      <property name="jdbc.SynchronizeMappings" value="buildSchema(ForeignKeys=true)" /> 
     </properties> 

    </persistence-unit> 
</persistence> 

在src文件夹我有META-INF和我创建persistence.xml中与在该(META-INF/persistennce.xml)。

请让我知道解决这个问题。

+0

不过,我有同样的问题。我使用OPenJpa创建了JPA项目(不是捆绑包),并且使用相同的配置工作正常。当我创建捆绑包时,我正面临着这个问题。请anybode帮助我找出问题 – 2013-03-07 06:17:03

回答

0

它可能会有所帮助,如果你列出什么错误你得到,但也可能是因为你有这行两次:

<property name="openjpa.Log" value="DefaultLevel=WARN, Tool=INFO" /> 

这仅仅是因为你不一个在黑暗中刺伤没有提到错误是什么,我只是碰巧得到了“等效属性键”openjpa.Log“和”Log“的错误信息在配置中指定。”我正在做的事情。