wicket-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Robert Dahlström <robert.dahlst...@bwin.org>
Subject Wickettester, cookies and redirects in Wicket 1.4.15
Date Tue, 01 Feb 2011 09:46:36 GMT
Hi, I currently have an application reading a cookie in my session. All 
of my unit tests where the pattern is: Create page -> submit form -> 
redirect to new page fails to read this cookie after the redirect to new 
page.

The cookie is added both to the response and request before each new 
test (WicketTester gets recreated):
tester.getWicketResponse().addCookie(cookie);
tester.getServletRequest().setCookies(new Cookie[]{cookie});

This works fine during first page rendering and form submission. But 
after the form has been submitted and the redirect to new page takes 
place the cookie does not exist in the new request.

Since I'm a bit unsure if this is the wanted behavior for WicketTester 
or not I'm posting this to all users out there.

In my particular use case I would like the cookie to be persisted 
between original request and new request since that's how it is working 
in the real application.

Codewise (with Wicket 1.4.15):
In MockWebApplication.postProcessRequestCycle:
if (httpResponse.isRedirect())
{
   lastRenderedPage = generateLastRenderedPage(cycle);

   MockHttpServletRequest newHttpRequest = new 
MockHttpServletRequest(application, servletSession, 
application.getServletContext());

...
}

The call to new MockHttpServletRequest will clear all cookies set during 
initialize() and thus my cookie will not be set in the redirect request.

Any ideas on how to tackle this? For me I'd like the WicketTester to 
copy any existing cookies from the original request to the redirect 
request. I'd also be happy if there's another place in the code where I 
can set the cookie to have it available during the redirect request 
phase as well.

I also found an old bug (WICKET-1886) that felt like the same issue when 
I read it.

Regards
Robert

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
For additional commands, e-mail: users-help@wicket.apache.org


Mime
View raw message