2015-10-17 78 views
1

我的cassandra + kundera + eclipse项目中存在持久性问题。该报道的错误是这样的:Kundera:持久性配置错误cassandra + eclipse + kundera

的log4j:警告没有附加目的地可以为记录器 (com.impetus.kundera.KunderaPersistence)中找到。 log4j:WARN请正确初始化 log4j系统。 log4j:WARN有关更多信息,请参阅 http://logging.apache.org/log4j/1.2/faq.html#noconfig。 异常线程 “main” com.impetus.kundera.loader.PersistenceLoaderException: com.impetus.kundera.utils.InvalidConfigurationException:在 com.impetus无法 发现在类路径中任何META-INF/persistence.xml文件.kundera.configure.PersistenceUnitConfiguration.configure(PersistenceUnitConfiguration.java:100) 在 com.impetus.kundera.configure.Configurator.configure(Configurator.java:65) 在 com.impetus.kundera.KunderaPersistence.initializeKundera(KunderaPersistence .java:109) at com.impetus.kundera.KunderaPersistence.createEntityManagerFactory(KunderaPersistence.java:81) at javax.persistence.Persistence .createEntityManagerFactory(未知 来源)维持在controlador.Conetor.main(Conetor.java:17) javax.persistence.Persistence.createEntityManagerFactory(未知 源)引起的: com.impetus.kundera.utils.InvalidConfigurationException:无法 找到 com.impetus.kundera.configure.PersistenceUnitConfiguration.findPersistenceMetadatas(PersistenceUnitConfiguration.java:132) 任何META-INF/persistence.xml中的类路径文件在 com.impetus.kundera.configure.PersistenceUnitConfiguration.configure(PersistenceUnitConfiguration .java:83) ... 6更多

和持久性来源是这样的:

<persistence 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" 
    version="2.0"> 
    <persistence-unit name="cassandra_pu"> 
     <provider>com.impetus.kundera.KunderaPersistence</provider>  
     <properties>    
      <property name="kundera.nodes" value="localhost"/> 
      <property name="kundera.port" value="9160"/> 
      <property name="kundera.keyspace" value="KunderaExamples"/> 
      <property name="kundera.dialect" value="cassandra"/> 
      <property name="kundera.client.lookup.class" 
       value="com.impetus.client.cassandra.thrift.ThriftClientFactory" /> 

     </properties>  
    </persistence-unit> 
</persistence> 

POM XML WITH DE JAR KUNDERA

+0

小心地将所有代码片段缩进四个空格。否则,他们将无法正确显示(或者根本不显示)。当你粘贴错误消息和堆栈跟踪等时,你想在每行之前用'>'格式化它们。 StackOverflow内置的编辑器具有执行这些操作的按钮;您只需突出显示您的代码片段或错误消息,然后按按钮,并为您完成剩下的工作。 – sideshowbarker

+0

@DanielFerreira你的'persistence.xml'的位置是什么?它应该放在'META-INF'文件夹中的类路径(最好是src/main/resources)中。例如:'src/main/resources/META-INF/persistence.xml' –

+0

@DanielFerreira另外..我建议你使用最新版本的Kundera ie ['Kundera 3.1'](http://mvnrepository.com/artifact /com.impetus.kundera.client/kundera-cassandra/3.1) –

回答

0

请把你的persistence.xml以下路径。它应该解决这个错误。 src/main/resources/META-INF/persistence.xml