You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Johan Compagner (JIRA)" <ji...@apache.org> on 2007/05/16 15:35:16 UTC

[jira] Commented: (WICKET-574) WicketTester does not bind created Session to SessionStore

    [ https://issues.apache.org/jira/browse/WICKET-574?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12496300 ] 

Johan Compagner commented on WICKET-574:
----------------------------------------

hmm we see to do that in:

	public void setupRequestAndResponse()
	{
		servletRequest.initialize();
		servletResponse.initialize();
		servletRequest.setParameters(parametersForNextRequest);
		parametersForNextRequest.clear();
		this.wicketRequest = this.application.newWebRequest(servletRequest);
		this.wicketResponse = this.application.newWebResponse(servletResponse);
		createRequestCycle();
		this.application.getSessionStore().bind(wicketRequest, wicketSession);
		wicketResponse.setAjax(wicketRequest.isAjax());
	}

so are you calling createRequestCycle before you do setupRequestAndResponse() ?

> WicketTester does not bind created Session to SessionStore
> ----------------------------------------------------------
>
>                 Key: WICKET-574
>                 URL: https://issues.apache.org/jira/browse/WICKET-574
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 1.3.0-beta1
>            Reporter: Gerry Lowe
>            Priority: Minor
>
> The WicketTester constructor, via a call to MockWebApplication.createRequestCycle(), creates a new session but fails to bind it:
>         this.wicketSession = (WebSession) Session.findOrCreate();
> This means that the session subsequently gets over-written by a new one created in a later call to WicketTester.startPage().  This causes problems for any unit tests which want to set up session data after instantiating a WicketTester, but before calling WicketTester.startPage().
> The MockWebApplication.createRequestCycle() should probably bind the session immediately after creating it:
>         this.wicketSession = (WebSession) Session.findOrCreate();
>         getApplication().getSessionStore().bind(getWicketRequest(), wicketSession);
> Then subsequent calls to startPage() will use this session rather than create a new one.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.