Dúvida Hibernate + Exception Handling

Pessoal, estou com uma certa dificuldade aqui em manipular as exeções do Hibernate. O que acontece é o seguinte:

  • Estou usando o modelo OpenSessionInView fazendo o controle transacional do Hibernate por um filtro(funciona 100%)
  • Quando acontece um erro em alguma operação do Hibernate qualquer e eu queria capturar esse erro e tratá-lo para que eu gere uma mensagem
    e mostre ao usuário identificanto o erro, mas não estou conseguindo.

Eu coloquei um bloco try/catch para capturar a chamada que faço que pode gerar erro ex:

try{
    objeto.gerenciaUsuario(user,operacao);
}catch(HibernateException he){
     request.setAttribute("mensagem","Erro ao armazenar dados..blablabla");
}
request.forward(request,response);

Porém, se eu faço isso eu perco a minha sessão do hibernate e se no meu forward eu for utilizar operação com o hibernate denovo dá pau dizendo que tá sem session =/
:?: :?: :?:
Alguém dá alguma dica? Como vocês tratam os erros que o Hibernate gera para gerar mensagens de erro para seus aplicativos?
Obrigado pela ajuda!

Ninguém usa o Open Session in View ?
Ou o que usam para controlar a sessão e transação do Hibernate?
Como fazem o tratamento das exception do Hibernate para enviar avisos ao usuário?

Alguém pode me ajudar nesse assunto, ou indicar algum site com exemplo, coisa do tipo?

Me deparei com o mesmo problema, você conseguiu resolvê-lo?
Reforço o pedido acima, se alguém no fórum souber utilizar o padrâo open session in view e poder ajudar, alguma dica nesse assunto seria bem-vinda.