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/>
