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
> Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/f9683bfe
> Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/f9683bfe
> Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/f9683bfe
>
> Branch: refs/heads/wicket-6.x
> Commit: f9683bfea7826ca8b87a131bae44f997815f8b4f
> 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
> ----------------------------------------------------------------------
> 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