WICKET-4686 MountMapper does not support correctly parameter placeholders Revert the null-yfing of the page parameters. If there is no listener interface then everything is fine with the parsing of the parameters
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/89184b79 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/89184b79 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/89184b79 Branch: refs/heads/sandbox/WICKET-4686 Commit: 89184b792fc31388ad22f3ff8fb2bb0dd0eed350 Parents: c38c022 Author: Martin Tzvetanov Grigorov <[email protected]> Authored: Fri Jan 10 14:35:15 2014 +0200 Committer: Martin Tzvetanov Grigorov <[email protected]> Committed: Fri Jan 10 14:35:15 2014 +0200 ---------------------------------------------------------------------- .../wicket/core/request/handler/PageProvider.java | 6 ------ .../request/mapper/AbstractBookmarkableMapper.java | 10 +++++----- .../wicket/core/request/mapper/PackageMapperTest.java | 13 +++++-------- 3 files changed, 10 insertions(+), 19 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/89184b79/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageProvider.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageProvider.java b/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageProvider.java index 0be5d76..2c015a4 100644 --- a/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageProvider.java +++ b/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageProvider.java @@ -259,12 +259,6 @@ public class PageProvider implements IPageProvider if (pageId != null) { page = getStoredPage(pageId); - - if (page == null) - { - // WICKET-4594 - ignore the parsed parameters for stateful pages - pageParameters = null; - } } if (page == null) http://git-wip-us.apache.org/repos/asf/wicket/blob/89184b79/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/AbstractBookmarkableMapper.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/AbstractBookmarkableMapper.java b/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/AbstractBookmarkableMapper.java index 1569468..8a30578 100644 --- a/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/AbstractBookmarkableMapper.java +++ b/wicket-core/src/main/java/org/apache/wicket/core/request/mapper/AbstractBookmarkableMapper.java @@ -271,11 +271,11 @@ public abstract class AbstractBookmarkableMapper extends AbstractComponentMapper if (listenerInterface != null) { -// if (pageInfo.getPageId() != null) -// { -// // WICKET-4594 - ignore the parsed parameters for stateful pages -// pageParameters = null; -// } + if (pageInfo.getPageId() != null) + { + // WICKET-4594 - ignore the parsed parameters for stateful pages + pageParameters = null; + } PageAndComponentProvider provider = new PageAndComponentProvider(pageInfo.getPageId(), pageClass, pageParameters, renderCount, componentInfo.getComponentPath()); http://git-wip-us.apache.org/repos/asf/wicket/blob/89184b79/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PackageMapperTest.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PackageMapperTest.java b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PackageMapperTest.java index 8ebca1d..e9a9d3f 100644 --- a/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PackageMapperTest.java +++ b/wicket-core/src/test/java/org/apache/wicket/core/request/mapper/PackageMapperTest.java @@ -222,7 +222,7 @@ public class PackageMapperTest extends AbstractMapperTest assertEquals(ILinkListener.INTERFACE, h.getListenerInterface()); assertEquals("foo:bar", h.getComponent().getPageRelativePath()); - PageParameters p = page.getPageParameters(); + PageParameters p = h.getPageParameters(); assertEquals(0, p.getIndexedCount()); assertEquals(0, p.getNamedKeys().size()); @@ -290,17 +290,14 @@ public class PackageMapperTest extends AbstractMapperTest @Test public void decodeNamedParameters() { - Url url = Url.parse(MOUNT_PATH + "/fooValue/barValue/" + PAGE_CLASS_NAME + "/i1/i2?15-ILinkListener-foo-bar&a=b&b=c"); + Url url = Url.parse(MOUNT_PATH + "/fooValue/barValue/" + PAGE_CLASS_NAME + "/i1/i2?a=b&b=c"); IRequestHandler handler = namedParametersEncoder.mapRequest(getRequest(url)); - assertTrue(handler instanceof ListenerInterfaceRequestHandler); - ListenerInterfaceRequestHandler h = (ListenerInterfaceRequestHandler)handler; + assertTrue(handler instanceof RenderPageRequestHandler); + RenderPageRequestHandler h = (RenderPageRequestHandler)handler; IRequestablePage page = h.getPage(); - checkPage(page, 15); - - assertEquals(ILinkListener.INTERFACE, h.getListenerInterface()); - assertEquals("foo:bar", h.getComponent().getPageRelativePath()); + checkPage(page, 1); PageParameters p = h.getPageParameters(); assertEquals(2, p.getIndexedCount());
