2015-07-15 2 views
0

Je viens d'écrire un programme de test pour plusieurs bases de données. Il est basé sur les bases de données relationnelles hibernate vor et hibernate-ogm pour les bases de données NoSQL. Pour le moment je supporte mysql, postgresql et MongoDB. Maintenant, je voulais essayer le pilote de Cassandre, mais je reçois l'erreur:hibernate-ogm - 'cassandra_experimental' n'est pas un nom court de fournisseur de datastore valide

'cassandra_experimental' is no valid datastore provider short name. Valid values are: MAP, INFINISPAN, EHCACHE, MONGODB, NEO4J_EMBEDDED, COUCHDB_EXPERIMENTAL

ma liste de dépendance dans mon projet Maven:

<dependencyManagement> 
    <dependencies> 
     <dependency> 
      <groupId>org.hibernate.ogm</groupId> 
      <artifactId>hibernate-ogm-bom</artifactId> 
      <version>4.2.0.Final</version> 
     </dependency> 

    </dependencies> 
</dependencyManagement> 

<dependencies> 

    <dependency> 
     <groupId>org.jboss.jbossts</groupId> 
     <artifactId>jbossjta</artifactId> 
     <version>4.16.6.Final</version> 
    </dependency> 



    <!-- Hibernate Search --> 
    <dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate-search-orm</artifactId> 
     <version>5.0.1.Final</version> 
    </dependency> 

    <!-- Use this for MongoDB --> 
    <dependency> 
     <groupId>org.hibernate.ogm</groupId> 
     <artifactId>hibernate-ogm-mongodb</artifactId> 
     <version>4.1.3.Final</version> 
    </dependency> 


    <!-- cassandra --> 
    <dependency> 
     <groupId>org.hibernate.ogm</groupId> 
     <artifactId>hibernate-ogm-cassandra</artifactId> 
     <version>4.2.0.Final</version> 
    </dependency> 

    <!-- mysql --> 
    <dependency> 
     <groupId>mysql</groupId> 
     <artifactId>mysql-connector-java</artifactId> 
     <version>5.1.36</version> 
    </dependency> 

    <!-- postgresql --> 
    <dependency> 
     <groupId>org.postgresql</groupId> 
     <artifactId>postgresql</artifactId> 
     <version>9.4-1200-jdbc41</version> 
    </dependency> 

    <!-- Testing --> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>4.12</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.easytesting</groupId> 
     <artifactId>fest-assert</artifactId> 
     <version>1.4</version> 
     <scope>test</scope> 
    </dependency> 
</dependencies> 

J'utilise la documentation de mise en veille prolongée docs.jboss.org

Est-ce que quelqu'un utilise déjà cassandra et peut donner quelques conseils ici?

J'apprécie toute réponse :)

PS: quelques informations supplémentaires: -je utiliser un client Windows 7 et un serveur ubuntu 14.04 dans une machine virtuelle. sur mon client j'utilise eclipse kepler pour écrire mon programme.

édition: j'étais Asek pour les messages d'erreur lorsque je supprimer la version dans le pom.xml:

mvn eclipse:eclipse 
[INFO] Scanning for projects... 
[ERROR] [ERROR] Some problems were encountered while processing the POMs: 
[ERROR] 'dependencies.dependency.version' for org.hibernate.ogm:hibernate-ogm-mongodb:jar is missing. @ line 49, column 15 
[ERROR] 'dependencies.dependency.version' for org.hibernate.ogm:hibernate-ogm-cassandra:jar is missing. @ line 56, column 15 
@ 
[ERROR] The build could not read 1 project -> [Help 1] 
[ERROR] 
[ERROR] The project org.hibernate.demos:History_Log_Test:1.0-SNAPSHOT (C:\User 
s\MOTZA\Documents\__BA\Bachelor-Thesis\ws\History_Log_Test\pom.xml) has 2 errors 

[ERROR]  'dependencies.dependency.version' for org.hibernate.ogm:hibernate-og 
m-mongodb:jar is missing. @ line 49, column 15 
[ERROR]  'dependencies.dependency.version' for org.hibernate.ogm:hibernate-og 
m-cassandra:jar is missing. @ line 56, column 15 
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit 
ch. 
[ERROR] Re-run Maven using the -X switch to enable full debug logging. 
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please rea 
d the following articles: 
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildin 
gException 

Répondre

0

Pouvez-vous supprimer les versions de la mise en veille prolongée-ogm-mongodb et mise en veille prolongée-ogm-cassandra dépendances, vous obtiendrez les de la nomenclature:

<dependency> 
    <groupId>org.hibernate.ogm</groupId> 
    <artifactId>hibernate-ogm-mongodb</artifactId> 
</dependency> 

<dependency> 
    <groupId>org.hibernate.ogm</groupId> 
    <artifactId>hibernate-ogm-cassandra</artifactId> 
</dependency> 

Vous spécifiez 4.1.3 pour mise en veille prolongée-ogm-mongodb, peut-être cela tire dans l'ancienne version de hibernate-ogm-core. Si cela ne fonctionne toujours pas, vous avez besoin de plus de détails sur votre environnement: s'agit-il de Java SE ou d'un serveur JJ tel que WildFly?

+0

merci pour votre réponse, lorsque je supprime les versions, j'ai une erreur de construction du projet. pour moi ça n'a jamais fonctionné avec le plugin maven, donc je vais sur console en utilisant "mvn eclipse: eclipse" pour construire un projet eclipse. –

+0

merci @Gunnar, c'était le problème. J'ai juste utilisé la version 4.2.0 pour mongoDB et cela a fonctionné :) –

+0

Quelle erreur obtenez-vous si vous omettez les versions dans les dépendances réelles? Comme indiqué, ils ne devraient pas être nécessaires en raison de l'importation de la nomenclature dans votre bloc de gestion des dépendances. – Gunnar

0

Je suppose que vous n'utilisez la dernière version Hibernate annonce.

Le support expérimental Cassandra est disponible depuis la version 4.2.

Ceci est la validation où le nom du fournisseur de datastore a changé CASSANDRA_EXPERIMENTAL: 6fd5777

+0

merci pour votre indice, je n'ai pas utilisé la dernière version, mais après avoir changé que le problème existe toujours. Je mets dans la liste des dépendances de mon fichier pom, peut-être que cela aide? –