在我开发的应用程序上我试图为应用程序的页面保留一个漂亮且可读的URL。 我从url开始如下: http://somedomain.com/context/?param1=value¶m2=value 其中context是应用程序安装路径,param1和param2是传递给应用程序的一些参数。 问题是,当我移动到另一个页面时,网址更改为如下: https://somedomain.com/?wicket:bookmarkablePage=:something&Title=something&group=something 我在页面之间移动的方式如下:
getRequestCycle()。setResponsePage(new otherPage(obj1,obj2, pageParameters)
其中obj1和obj2是页面初始化所需的对象。 正如我从this帖子中了解到的
RequestCycle().setResponsePage(Page page)
创建一个有状态的页面,该页面不可收藏,并且在使用
时不显示参数
RequestCycle().setResponsePage(Class<C> pageClass, PageParameters pageParameters)
创建一个显示参数的无状态页面。 问题是我使用第一个,因为我必须自己创建页面,所以我可以将两个对象传递给它。 有没有办法让网址保持原来的可收藏格式并从中删除wicket的参数? 我几乎尝试了在这个网站和其他网站上发布的所有建议,但没有一个适合我的情况,因为他们建议让wicket创建页面本身(使用setResponsePage的第二个选项)。 任何帮助都感激不尽。 感谢
答案 0 :(得分:1)
从您的网址示例中我看到您正在使用Wicket 1.4。我相信1.5会做你想要的开箱即用。在Wicket 1.4中,您可以通过使用HybridUrlCodingStrategy安装页面来获得类似的结果。