[RESOLVIDO]Hibernate e transação depois de capturar uma exceção

Estou com um problema que não consegui compreendê-lo muito bem.

Eu tenho o ano do exercício que estou usando no software como uma variável estática e tenho alguns registros de movimentos
Estes registros de movimentos vão ser classificados por um número, que não é a PK, que é no formado 0001/12, 0002/12

O problema é que quando eu mudei o exercício para 2013 e fui pegar o último registro de 2013, o resultado era null, como esperado, então eu capturo a exceção e só retorno algo como

return "0001/"+ano;

sendo que ano = 13;

Mas quando vou salvar o objeto do movimento com isso, o hibernate diz ‘Transaction already active’.

Alguém poderia me ajudar?

Obrigado !

Provavelmente esta invocando tr.begin() em um transação já iniciada.
Pode verificar com if se a transação já esta ativa

if (!tr.active()) { tr.begin(); }

Sim, fiquei bem atento com isso, mas acabei de resolver o problema

o problema era o seguinte,

quando a exceção era lançada, o commit não era dado, então a transação não era “feita”, portanto, só tirei os throws do caminho capturei a exceção direto no getResult

Obrigado !