Olá pessoal estou tentando realizar a inserção de um relacionamento ManyToMany mas só tenho como volta esse “erro”:
Usage: RealmBase -a <algorithm> [-e <encoding>] <credentials>
Entidades envolvidas:
Entidade Dog:
@Entity
public class Dog {
@Id
@GeneratedValue
private Integer id;
@ManyToMany(mappedBy="dogs")
private List<Person> person;
private String name;
public List<Person> getPerson() {
return person;
}
public void setPerson(List<Person> person) {
this.person = person;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Entidade Person dona do relacionamento:
@Entity
public class Person {
@Id
@GeneratedValue
private Integer id;
private String name;
@ManyToMany
@JoinTable(
name="person_dog",
joinColumns=@JoinColumn(name="person_id"),
inverseJoinColumns = @JoinColumn(name="dog_id") )
private List<Dog> dogs;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public List<Dog> getDogs() {
return dogs;
}
public void setDogs(List<Dog> dogs) {
this.dogs = dogs;
}
}
método main:
package mapeamento.manytomany;
import java.util.ArrayList;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
public class main {
public static List<Person> getPersonList(){
List<Person> personList = new ArrayList<>();
Person person1 = new Person();
person1.setName("testePerson1");
person1.setDogs(getDogList());
Person person2 = new Person();
person2.setName("testePerson2");
person2.setDogs(getDogList());
personList.add(person1);
personList.add(person2);
return personList;
}
public static List<Dog> getDogList(){
List<Dog> dogList = new ArrayList<>();
Dog dog1 = new Dog();
dog1.setName("testeDog1");
dog1.setPerson(getPersonList());
Dog dog2 = new Dog();
dog2.setName("testeDog2");
dog2.setPerson(getPersonList());
dogList.add(dog1);
dogList.add(dog2);
return dogList;
}
public static void main(String []args){
EntityManagerFactory emf = Persistence.createEntityManagerFactory("testeHibernate");
EntityManager em = emf.createEntityManager();
try {
em.getTransaction().begin();
Person person = new Person();
person.setName("Person");
person.setDogs(getDogList());
em.persist(person);
em.getTransaction().commit();
System.out.println("terminou transição");
} catch (Exception e) {
em.getTransaction().rollback();
e.printStackTrace();
}finally{
em.close();
}
}
}
O erro não pode estar no persistence.xml pois um outro teste no mesmo projeto funcionou perfeitamente. OBS: o outro era OneToMany.