You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by jc...@apache.org on 2007/05/23 16:00:25 UTC
svn commit: r540957 - in /incubator/wicket/trunk/jdk-1.4/wicket/src:
main/java/org/apache/wicket/
main/java/org/apache/wicket/request/target/basic/
test/java/org/apache/wicket/markup/html/link/
Author: jcompagner
Date: Wed May 23 07:00:23 2007
New Revision: 540957
URL: http://svn.apache.org/viewvc?view=rev&rev=540957
Log:
fix for continueToOriginalUrl with url params
Modified:
incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/PageMap.java
incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/basic/RedirectRequestTarget.java
incubator/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java
Modified: incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/PageMap.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/PageMap.java?view=diff&rev=540957&r1=540956&r2=540957
==============================================================================
--- incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/PageMap.java (original)
+++ incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/PageMap.java Wed May 23 07:00:23 2007
@@ -254,8 +254,8 @@
// The intercept continuation URL should be saved exactly as the
// original request specified.
- interceptContinuationURL = cycle.getRequest().getPath();
-
+ interceptContinuationURL = "/" + cycle.getRequest().getURL();
+
// Page map is dirty
dirty();
Modified: incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/basic/RedirectRequestTarget.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/basic/RedirectRequestTarget.java?view=diff&rev=540957&r1=540956&r2=540957
==============================================================================
--- incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/basic/RedirectRequestTarget.java (original)
+++ incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/basic/RedirectRequestTarget.java Wed May 23 07:00:23 2007
@@ -66,7 +66,11 @@
{
Response response = requestCycle.getResponse();
response.reset();
- if (redirectUrl.startsWith("/") || redirectUrl.startsWith("http://") || redirectUrl.startsWith("https://"))
+ if (redirectUrl.startsWith("/"))
+ {
+ response.redirect(RequestCycle.get().getRequest().getRelativePathPrefixToContextRoot() + redirectUrl.substring(1));
+ }
+ else if (redirectUrl.startsWith("http://") || redirectUrl.startsWith("https://"))
{
response.redirect(redirectUrl);
}
Modified: incubator/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java?view=diff&rev=540957&r1=540956&r2=540957
==============================================================================
--- incubator/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java (original)
+++ incubator/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java Wed May 23 07:00:23 2007
@@ -16,6 +16,7 @@
*/
package org.apache.wicket.markup.html.link;
+import org.apache.wicket.PageParameters;
import org.apache.wicket.WicketTestCase;
import org.apache.wicket.protocol.http.WebRequestCycle;
import org.apache.wicket.request.target.component.BookmarkablePageRequestTarget;
@@ -81,5 +82,31 @@
}
+ /**
+ * @throws Exception
+ */
+ public void testBookmarkableRequestWithInterceptWithParams() throws Exception
+ {
+ tester.setupRequestAndResponse();
+
+ WebRequestCycle cycle = tester.createRequestCycle();
+
+ PageParameters pp = new PageParameters();
+ pp.put("test", "test");
+ String url = cycle.urlFor(new BookmarkablePageRequestTarget(BookmarkableThrowsInterceptPage.class,pp)).toString();
+ String url2 = cycle.urlFor(new BookmarkablePageRequestTarget(BookmarkableContinueToPage.class,null)).toString();
+
+ tester.setupRequestAndResponse();
+ tester.getServletRequest().setURL("/WicketTester$DummyWebApplication/WicketTester$DummyWebApplication/" + url);
+ tester.processRequestCycle();
+
+ assertEquals(tester.getLastRenderedPage().getClass(), BookmarkableSetSecurityPage.class);
+
+ tester.setupRequestAndResponse();
+ tester.getServletRequest().setURL("/WicketTester$DummyWebApplication/WicketTester$DummyWebApplication/" + url2);
+ tester.processRequestCycle();
+ assertEquals(tester.getLastRenderedPage().getClass(), BookmarkableThrowsInterceptPage.class);
+
+ }
}