[RESOLVIDO] Hibernate imprime mas não executa os inserts

Ae… ta meio cabeludo isso aki…
Já fiz consultas tranquilamente, retornou tudo ok. O problema é quando tento inserir registros… O log do hibernate imprime o insert no console, mas não o executa. Quando eu vou verificar no banco, o registro não está lá.

o código que eu executo está assim:

Session session = null; try { session = HibernateUtil.getSession(); HibernateUtil.beginTransaction(); session.save(mensagem); session.flush(); HibernateUtil.commitTransaction(); } catch (HibernateException e) { log.error("Erro ao cadastrar mensagem"); e.printStackTrace(); HibernateUtil.rollbackTransaction(); } finally { HibernateUtil.closeSession(); }O insert é impresso ao passar pelo flush()
e não é retornado nenhum erro… nem passa pelo catch()…
alguém tem idéia do q pode ser? to sem alternativas já… tá foda até de googlar…

Tira o flush,
Session session = HibernateUtil.getSession();
session.beginTransaction();

session.save(obejectVO);

session.beginTransaction().commit();

Sem o flush nem imprime o insert no console.
Eu coloquei ele exatamente na tentativa de fazer funcionar, e apesar de não ter conseguido, melhorou… pelo menos agora imprime a consulta na tela.

Vamos lá, se você estiver usando o mysql a chave primaria será auto-incremento
no seu VO
@Id
private Integer codigo;

se você estiver usando o oracle por exemplo você coloca
@javax.persistence.SequenceGenerator(name=“aliasnomedasequence”,sequenceName=“nomedasequence”,allocationSize=0)
public class VO
{

@Id
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator=“SQCODFALECONOSCOORGAO”)
private Integer codigo;

isso tem que estar redondo.

o banco é oracle

[quote=pablomaiden]no seu VO
@Id
private Integer codigo;

se você estiver usando o oracle por exemplo você coloca
@javax.persistence.SequenceGenerator(name=“aliasnomedasequence”,sequenceName=“nomedasequence”,allocationSize=0)
public class VO
{

@Id
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator=“SQCODFALECONOSCOORGAO”)
private Integer codigo;

isso tem que estar redondo.[/quote]
Queria que fosse assim tão simples… estou usando obrigatoriamente java 4… então annotations já era… de volta ao .hbm.xml…
e outra coisa… a chave é composta (estou usando uma classe pra representar o id composto… a pequena PK tem 4 colunas… não olha assim pra mim q eu não tenho culpa nenhuma)
Suponho que isso elimine a necessidade do generator

ps: só pra antecipar, não tem possibilidade nenhuma de eu usar uma versão posterior do java nem alterar o banco.

Valeu Pablo… resolvido…
tirei o flush e implementei o hashCode e o equals da classe criada pra chave composta…