Amigos,
estou com um problema que ao gravar os dados no banco de dados meu método e executa todos os passos porém não da erro nenhum
mas tb não insere os dados na tabela
abaixo esta meu fonte
@Override
public boolean cadastrarPermissao(MenuPermissaoTO menuPermissaoTO) {
boolean permissaoOK = false;
MenuPermissaoTO permissaoTO = new MenuPermissaoTO();
EntityManagerFactory emf=Persistence.createEntityManagerFactory("dbFranque");
EntityManager em=emf.createEntityManager();
EntityTransaction entr=em.getTransaction();
try {
entr.begin();
permissaoTO.setIdMenuItem(menuPermissaoTO.getIdMenuItem());
permissaoTO.setCodUsuario(menuPermissaoTO.getCodUsuario());
em.merge(permissaoTO);
em.persist(permissaoTO);
permissaoOK = true;
} catch (Exception e) {
e.printStackTrace();
}
finally {
em.close();
}
return permissaoOK;
}
Adicionei a linha em.getTransaction().commit();
ai gravar os registros duplicado e gera o erro abaixo o que pode ser isso ?
Caused by: java.sql.SQLException: Cannot call commit when using distributed transactions
at weblogic.jdbc.wrapper.JTAConnection.commit(JTAConnection.java:377)
at org.hibernate.transaction.JDBCTransaction.commitAndResetAutoCommit(JDBCTransaction.java:170)
at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:146)