Erro: ORA-02089: COMMIT is not allowed in a subordinate session

2 respostas
J

Alguem sabe como resolver esse erro.

ORA-02089: COMMIT is not allowed in a subordinate session.

Uso JPA com hibernate.

O sistema esta no Jboss, faz um insert e chama proc no oracle, dentro da proc tem um commit.
Ai da o erro.

ORA-02089: COMMIT is not allowed in a subordinate session.

2 Respostas

M

Faltou dizer que o problema só ocorre no JBoss.
Sendo assim provavelmente é algo relacionado ao Jboss.

P

Tive o mesmo problema com procedures, oracle e hibernate…

Tira o commit da procedure…

e vai ter que adicionar mais um método no dao, que salve e commit

getSession().save(t);
getSession().beginTransaction().commit();

Acredito que esse erro ocorre porque o hibernate demora alguns milesimos pra salvar o objeto no banco e a procedure é chamada antes do objeto estar salvo!!

Criado 13 de abril de 2011
Ultima resposta 13 de abr. de 2011
Respostas 2
Participantes 3