We had the same issue, and here's an example of the way that we implemented
the same sort of thing.....  It could probably be made better, but it works
:)

First create your own request handler...

public class MyRequestCycle extends WebRequestCycle 
{
        protected Log log = LogFactory.getLog(this.getClass());
        public MyRequestCycle(WebApplication application, WebRequest
request, Response response) {
                super(application, request, response);
        }

        @Override
        protected void onEndRequest() {

                if(log.isDebugEnabled())
                {
                        log.debug("In onEndRequest");
                }
                
                try 
                {
                        HibernateUtil.closeSession();
                } 
                catch (PersistenceException e) 
                {
                        log.error(e);
                        
                }
                        
                super.onEndRequest();
        }
        
        
...then reference it in your WebApplication (maybe in a abstract class)

public abstract class MyBaseApplication extends WebApplication
{

        protected Log log = LogFactory.getLog(this.getClass());
        
        @Override
        public RequestCycle newRequestCycle(Request request, Response
response) 
        {
                return new MyRequestCycle(this, (WebRequest)request,
(WebResponse)response);
        }


I hope that this helps.

Joe C

-----Original Message-----
From: Martin Makundi [mailto:[EMAIL PROTECTED] 
Sent: Sunday, August 03, 2008 9:07 AM
To: users@wicket.apache.org
Subject: Re: Managing database connection?

> how is a custom request cycle heavy weight? It isn't-it's a common
practise.

Ok :) I just had a look at DataBinder.net, that was more heavy-weght.

Is there any short introduction available on how to implement
onEndRequest() -hook, or is the best reference to just have a look at
the respective code of DataBinder.net?

**
Martin
>
> On Sun, Aug 3, 2008 at 2:28 PM, Martin Makundi
> <[EMAIL PROTECTED]> wrote:
>> Anything lighter? Basically I just need to hook the onEndRequest()
>> event. I assume it would be bad practice to extend the wicket servlet,
>> though ..
>>
>> **
>> Martin
>>
>> 2008/8/3 Martijn Dashorst <[EMAIL PROTECTED]>:
>>> Create a custom request cycle that opens a Session in onBeginRequest
>>> and closes it in onEndRequest. Perhaps DataBinder.net has one readily
>>> available.
>>>
>>> Martijn
>>>
>>> On Sun, Aug 3, 2008 at 1:11 PM, Martin Makundi
>>> <[EMAIL PROTECTED]> wrote:
>>>> I am using Hibernate/JPA without Spring. Is there a suitable
>>>> interceptor class in Wicket that could be used?
>>>>
>>>> **
>>>> Martin
>>>>
>>>> 2008/8/3 Martijn Dashorst <[EMAIL PROTECTED]>:
>>>>> Most folks use open session in view filter from Spring (in combination
>>>>> with Hibernate). I think they have a similar filter for JDBC template
>>>>> (which is highly recommended for normal JDBC actions IMO).
>>>>>
>>>>> Martijn
>>>>>
>>>>> On Sun, Aug 3, 2008 at 12:45 PM, Martin Makundi
>>>>> <[EMAIL PROTECTED]> wrote:
>>>>>> Hi!
>>>>>>
>>>>>> What is the best place to open/close a data connection in Wicket?
>>>>>>
>>>>>> I prefer lazy open, but where is the best place to perform the
>>>>>> connection/entitymanager.close? Override servlet request? Filter?
>>>>>>
>>>>>> **
>>>>>> Martin
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Become a Wicket expert, learn from the best: http://wicketinaction.com
>>>>> Apache Wicket 1.3.4 is released
>>>>> Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3.
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>>>
>>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Become a Wicket expert, learn from the best: http://wicketinaction.com
>>> Apache Wicket 1.3.4 is released
>>> Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3.
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>
>
>
> --
> Become a Wicket expert, learn from the best: http://wicketinaction.com
> Apache Wicket 1.3.4 is released
> Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to