Hola Arlen,

El enfoque de manejar session y transaction por request es asumiendo
que tu aplicación solo va a lanzar excepciones en casos excepcionales
(hasta suena lógico), todos los casos que vos querés contemplar los
tenés que validar sin esperar a que "explote" la aplicación. Ejemplo
de esto es un campo (en la db) que no admite null, en este enfoque
deberías validar antes de hacer el save que la propiedad (del objeto)
no esté en null.

El otro enfoque sería que manejes solo al session por request y la
transaction en forma explícita, preferentemente dentro de un bloque
using. Esto te permitiría controlar mejor los rollback y las
excepciones, aunque con un poco de trabajo extra a la primera opción
donde, de alguna manera, te desentendes de la transaction.

saludos.
nelo

2012/5/9 Arlen <[email protected]>:
> Hola grupo tengo una pequeña duda con el manejo de la session de
> hibernate en un entorno web. Estoy usando el patron session-per-
> request porque creo es el que mejor se adapta a mi proyecto. Me estoy
> basando en la configuración descrita en el artículo: nhibernate best
> practices. En ese articulo se crea la session y junto a ella una
> transacción cade vez que se inicia una peticion y a su vez se cierra
> la transacción y la session al finalizar el request. Hasta ahora
> cuando todo marcha ok no hay problemas pero cuando hay un error que se
> detecta al cerrar la session creo que al hacer flush se me hace
> dificil capturarlo adecuadamente y darle el debido tratamiento.
> Agredeceria si alguien me puede indicar donde esta el problema o donde
> hay bibliografia sobre este tema. La verdad quisiera utilizar la
> transaccion en el ambito del GenericDAO y no a través del httphandler.
> Gracias.
>
> --
> Para escribir al Grupo, hágalo a esta dirección: 
> [email protected]
> Para más, visite: http://groups.google.com/group/NHibernate-Hispano

-- 
Para escribir al Grupo, hágalo a esta dirección: 
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano

Responder a