OK.

I see that the problem
is 
org.apache.wicket.request.handler.render.WebPageRenderer#getAndRemoveBufferedResponse()
that is called earlier to check for something missed
by org.apache.wicket.core.request.mapper.BufferedResponseMapper


On Thu, May 16, 2013 at 5:22 PM, Sven Meier <[email protected]> wrote:

> Hi Martin,
>
> there is no bound session.
>
> PageRenderer just checks whether there is a buffered response lingering
> around, but it isn't.
> Note the warning logged in that case:
>
>             logger.warn("The Buffered response should be handled by
> BufferedResponseRequestHandler**");
>
> Sven
>
>
> On 05/16/2013 04:17 PM, Martin Grigorov wrote:
>
>> Hi Sven,
>>
>> I'm not sure this is the correct fix here.
>> The session id is used as a key for the stored buffered responses for
>> stateful pages.
>>
>> I expect that the session is already bound in Page#afterRender().
>>
>> Since you've already debugged the app - why the session is still temporary
>> at that time ?
>>
>>
>> On Thu, May 16, 2013 at 5:05 PM, <[email protected]> wrote:
>>
>>  Updated Branches:
>>>    refs/heads/wicket-6.x c1ad7321e -> f9683bfea
>>>
>>>
>>> WICKET-5191 don't create session unnecessarily, as it might be obsolete
>>> after redirect anyway
>>>
>>> Project: 
>>> http://git-wip-us.apache.org/**repos/asf/wicket/repo<http://git-wip-us.apache.org/repos/asf/wicket/repo>
>>> Commit: http://git-wip-us.apache.org/**repos/asf/wicket/commit/**
>>> f9683bfe <http://git-wip-us.apache.org/repos/asf/wicket/commit/f9683bfe>
>>> Tree: 
>>> http://git-wip-us.apache.org/**repos/asf/wicket/tree/f9683bfe<http://git-wip-us.apache.org/repos/asf/wicket/tree/f9683bfe>
>>> Diff: 
>>> http://git-wip-us.apache.org/**repos/asf/wicket/diff/f9683bfe<http://git-wip-us.apache.org/repos/asf/wicket/diff/f9683bfe>
>>>
>>> Branch: refs/heads/wicket-6.x
>>> Commit: f9683bfea7826ca8b87a131bae44f9**97815f8b4f
>>> Parents: c1ad732
>>> Author: svenmeier <[email protected]>
>>> Authored: Thu May 16 15:56:52 2013 +0200
>>> Committer: svenmeier <[email protected]>
>>> Committed: Thu May 16 15:56:52 2013 +0200
>>>
>>> ------------------------------**------------------------------**
>>> ----------
>>>   .../request/handler/render/**PageRenderer.java       |   11
>>> +++++++----
>>>   1 files changed, 7 insertions(+), 4 deletions(-)
>>> ------------------------------**------------------------------**
>>> ----------
>>>
>>>
>>>
>>> http://git-wip-us.apache.org/**repos/asf/wicket/blob/**
>>> f9683bfe/wicket-core/src/main/**java/org/apache/wicket/**
>>> request/handler/render/**PageRenderer.java<http://git-wip-us.apache.org/repos/asf/wicket/blob/f9683bfe/wicket-core/src/main/java/org/apache/wicket/request/handler/render/PageRenderer.java>
>>> ------------------------------**------------------------------**
>>> ----------
>>> diff --git
>>> a/wicket-core/src/main/java/**org/apache/wicket/request/**
>>> handler/render/PageRenderer.**java
>>> b/wicket-core/src/main/java/**org/apache/wicket/request/**
>>> handler/render/PageRenderer.**java
>>> index f7419be..cf67324 100644
>>> ---
>>> a/wicket-core/src/main/java/**org/apache/wicket/request/**
>>> handler/render/PageRenderer.**java
>>> +++
>>> b/wicket-core/src/main/java/**org/apache/wicket/request/**
>>> handler/render/PageRenderer.**java
>>> @@ -18,11 +18,11 @@ package org.apache.wicket.request.**handler.render;
>>>
>>>   import org.apache.wicket.Application;
>>>   import org.apache.wicket.Session;
>>> -import org.apache.wicket.request.**component.IRequestablePage;
>>> -import org.apache.wicket.request.**cycle.RequestCycle;
>>>   import org.apache.wicket.core.**request.handler.IPageProvider;
>>>   import org.apache.wicket.core.**request.handler.**
>>> RenderPageRequestHandler;
>>>   import
>>> org.apache.wicket.core.**request.handler.**RenderPageRequestHandler.**
>>> RedirectPolicy;
>>> +import org.apache.wicket.request.**component.IRequestablePage;
>>> +import org.apache.wicket.request.**cycle.RequestCycle;
>>>   import org.apache.wicket.settings.**IRequestCycleSettings.**
>>> RenderStrategy;
>>>
>>>   /**
>>> @@ -98,12 +98,15 @@ public abstract class PageRenderer
>>>           */
>>>          protected String getSessionId()
>>>          {
>>> -               return Session.get().getId();
>>> +               return Session.exists() ? Session.get().getId() : null;
>>>          }
>>>
>>> +       /**
>>> +        * @return whether the current session is temporary
>>> +        */
>>>          protected boolean isSessionTemporary()
>>>          {
>>> -               return Session.get().isTemporary();
>>> +               return Session.exists() ? Session.get().isTemporary() :
>>> true;
>>>          }
>>>
>>>          /**
>>>
>>>
>>>
>>
>


-- 
Martin Grigorov
Wicket Training & Consulting
http://jWeekend.com <http://jweekend.com/>

Reply via email to