You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Jochen Kemnade (JIRA)" <ji...@apache.org> on 2016/02/08 09:23:39 UTC
[jira] [Updated] (TAP5-2115) Document how the hibernate session is
implemented
[ https://issues.apache.org/jira/browse/TAP5-2115?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jochen Kemnade updated TAP5-2115:
---------------------------------
Issue Type: Documentation (was: Bug)
> Document how the hibernate session is implemented
> -------------------------------------------------
>
> Key: TAP5-2115
> URL: https://issues.apache.org/jira/browse/TAP5-2115
> Project: Tapestry 5
> Issue Type: Documentation
> Components: documentation, tapestry-hibernate
> Reporter: Lance
> Priority: Minor
> Labels: documentation, hibernate
>
> There have been many questions on the user's list about how the hibernate session is implemented in tapestry-hibernate and also how to use tapestry-hibernate outside of a tapestry managed request / response.
> I think that the documentation should mention the following:
> 1. The hibernate session service provided by tapestry-hibernate is a singleton
> 2. The singleton is a proxy that points to a per-thread, lazy loaded hibernate session instance
> 3. The per-thread session instance is cleaned up by Registry.cleanupThread() /
> PerThreadManager.cleanup()
> 4. Tapestry automatically cleans up the thread local inside the normal request / response flow
> 5. Outside of a tapestry managed request / response, you must explicitly cleanup the thread
> 6. Transaction management outside of a request/response flow
> a. @CommitAfter and @Match("*DAO") with HibernateTransactionAdvisor
> b. HibernateSessionManager.commit() and abort()
> c. session.getTransaction().commit()
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)