estou com um probleminha ao fazer um relacionamento ManyToMay, o JPA cria a tabela de relacionamento Empresa_Cliente mas não grava, um detalhe é ele não lança nenhum erro e grava os dados tanto em Empresa como em Cliente.
Eu acho que devo estar deixando passar algum detalhe. abaixo segue um exemplo do meu código.
@Entity
public Empresa {
@ManyToMany
private Collection<Cliente> clientes;
}
@Entity
public class Cliente {
@ManyToMany(mappedBy="clientes",fetch=FetchType.LAZY)
private Collection<Empresa> empresas;
public String cadastrar(HttpServletRequest req, HttpServletResponse resp) {
try {
empresas = new ArrayList<Empresa>();
nome = req.getParameter("nome");
email = req.getParameter("email");
fone = req.getParameter("fone");
Empresa empresa = (Empresa) req.getSession().getAttribute("empresa_logada");
Empresa empresaFound = new EmpresaDAO().findByEmailAndSenha(empresa); //retorna uma empresa gerenciável pelo JPA
empresaFound.addCliente(this);
System.out.println(empresaFound); // tá imprimindo corretamente
addEmpresa(empresaFound);
new ClienteDAO().salvar(this);
Carro carro = new Carro();
carro.setAnoFab(Integer.parseInt(req.getParameter("anoFab")));
carro.setModelo(req.getParameter("modelo"));
carro.setPlaca(req.getParameter("placa"));
carro.setProprietario(this);
new CarroDAO().salvar(carro);
carros = new ArrayList<Carro>();
carros.add(carro);
}
}