Pessoal estou tendo um seguinte problemas de transação no hibernate
Primeiramente vejam meu arquivo de configuração
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">com.microsoft.sqlserver.jdbc.SQLServerDriver</property>
<property name="dialect">org.hibernate.dialect.SQLServerDialect </property>
<property name="hibernate.cache.use_second_level_cache">true</property>
<property name="hibernate.connection.isolation=2">true</property>
<property name="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</property>
<property name="hibernate.cache.use_query_cache">true</property>
<!-- Configurações de debug -->
<property name="show_sql">true</property>
<property name="use_outer_join">true</property>
<property name="hibernate.generate_statistics">true</property>
<property name="hibernate.use_sql_comments">true</property>
<!-- Classes mapeadas -->
<mapping class="oberon.dominio.Cliente"/>
<!-- <mapping class="oberon.dominio.TelefoneCliente"/>
<mapping class="oberon.dominio.ReferenciaCliente"/> -->
<mapping class="oberon.dominio.Pais"/>
<mapping class="oberon.dominio.Cidade"/>
<mapping class="oberon.dominio.Estado"/>
<mapping class="oberon.dominio.Bairro"/>
<mapping class="oberon.dominio.Endereco"/>
<mapping class="oberon.dominio.TipoLogradouro"/>
<!-- Classes mapeadas Contabilidade-->
<mapping class="oberon.dominio.contabilidade.HistoricoPadrao"/>
<mapping class="oberon.dominio.contabilidade.Situacao"/>
</session-factory>
</hibernate-configuration>
Nesta propriedade estou definindo como nivel de isolação ReadCommited
A Aplicação esta funcionando perfeitamente, fazendo consultas, cadastrando, alterando perfeitamente,
O problema ocorre quando a dois usuários acessando o sistema
O Usuário 1 acessa o sistema a tabela de clientes e consulta o CLIENTE 1 para fazer alterações MAIS ainda não comitou as alterações
O Usuário 2 acessa o sistema E TB TABELA DE CLIENTES e consulta o CLIENTE 1 para fazer alterações
Logo em seguida o Usuario 1 comita as alterações salvou no banco ate ai tudo bem
Agora quando o USUARIO 2 comita tb as alterações do CLIENTE 01 o hibernate simplesmente salva o registro sem lançar nenhuma exeção.
O Correto seria se estou usando o nivel de isolamente READ COMMITED ele teria que lançar uma execeção na transação do USUARIO 2.
Por que isso não acontece? Alguém já passou por isso