Galera,
Estou diante de um problema e gostaria de saber se alguém sabe como posso contorná-lo de forma prática.
Antes de tudo, estou trabalhando com Spring 2 + Hibernate 3.
Estou utilizando, um Interceptor (Hibernate) que é injetado
no meu transactionManager.
Para ser direto, o problema é o seguinte:
Como fazer dizer ao spring, que uma nova instância do meu interceptor seja criado para cada nova sessão aberta. Só estou conseguindo fazer que a instancia seja única por sessionFactory. Logo, terei problema com as threads, imagine, uma instância para todo mundo!.
Eu sei que usando apenas o hibernate, isso é fácil, basta fazer um Session-scoped ou SessionFactory-scoped.
Mas como reproduzir esse comportamento no spring?
Desde já, o prototype scope do spring não funciona, dado que sempre meus bens vao pedir uma sessão para a SessionFactory e esta é singleton. Deixa-la prototype, o que não convem explicar, não seria apropriado.
Conseguiram entender?