Olá
Pessoa estou tentando configurar o mongodb com jpa e estou tendo um pequeno erro :
Caused by: java.lang.NoSuchMethodError: com.mongodb.Mongo.getVersion()Ljava/lang/String;
Ao executa a classe Main.java
Vou publicar tudo que fiz até agora:
Qualquer ajuda será bem vinda
mongodb 3.2.10
pom.xml
Entity person.java
java Main.java classe
persistence.xml
pom.xml
-----------------------------pom.xml ----------------------------------------
-----------------------------Entity Person ----------------------------------------
package model;
import java.io.Serializable;
import javax.persistence.*;
import org.eclipse.persistence.nosql.annotations.DataFormatType;
import org.eclipse.persistence.nosql.annotations.Field;
import org.eclipse.persistence.nosql.annotations.NoSql;
/**
* @author Jose Neto
*/
@SuppressWarnings("all")
@Entity
@NoSql(dataType="person", dataFormat=DataFormatType.MAPPED)
public class Person implements Serializable {
/* The id uses the generated OID (UUID) from Mongo. */
@Id
@GeneratedValue
@Field(name = "_id")
private String _id;
@Basic
private String nome;
public Person() {
}
public String get_id() {
return _id;
}
public void set_id(String _id) {
this._id = _id;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
}
[/code]
-----------------------------------persistence .xml --------------------------------
xsi:schemaLocation="
http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
[/code]
--------------------------------------Java com methodo main.java para executa uma query
[code]
package model;
import java.util.ArrayList;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.EntityTransaction;
import javax.persistence.Persistence;
import javax.persistence.Query;
import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
import com.mongodb.MongoClient;
import com.mongodb.ServerAddress;
import model.Person;
@SuppressWarnings("all")
public class Main
{
private static EntityManagerFactory factory;
public static void main(String args[])
{
factory = Persistence.createEntityManagerFactory("mongodb_dev");
EntityManager manager = factory.createEntityManager();
EntityTransaction tx = manager.getTransaction();
try
{
List
Query q = manager.createQuery(" SELECT p FROM Person p ");
result = q.getResultList();
System.out.println(result.size());
}
catch (Exception e)
{
System.err.println("Error persisting data : " + e.getMessage());
if (tx.isActive())
{
tx.rollback();
}
manager.close();
return;
}
finally
{
if (tx.isActive())
{
tx.rollback();
}
manager.close();
}
manager.close();
}
}