我认为Wicket 1.5.x有一个奇怪的问题。突然间,检票口开始附加一个数字,增加到每个网址,看起来像mydomain.com/home?1。对于我点击的每个Bookmarkable链接,wicket会向浏览器发送一个重定向,增加该数量。当尝试清理网址并调用mydomain.com/home时,我也会遇到另一种重定向和数量增加的情况。
更糟糕的是,在谷歌应用引擎上点击一个链接时的版本号增加了两倍,这似乎也会导致提交表单的问题只是做了......好吧......没什么!?
我尝试使用setVersioned(false)/ true和setStatelessHint(false)/ true而没有任何结果。那可能是什么,如何摆脱它以及它如何影响我的应用程序无法使用GAE?
谢谢你们 亚历编辑:
看起来wicket总是递增我的页面的版本,因为我的基页是有状态的(如果在模型中显示用户的名字)。但是网站上没有任何变化,但点击即我的主页网站的我的书签链接会增加每次点击的页面ID,所以如果用户在主页链接上点击了10次,他的历史记录会受到完全同样的页面没有任何改变..这根本没有任何意义所以我很好奇如何在不失去状态的情况下解决这个问题!?
答案 0 :(得分:4)
该数字代表页面的版本。当页面有状态时出现(因此服务器必须跟踪其状态)。
设置无状态提示使页面无状态只需要一点点。您必须避免在服务器端保持状态的任何组件,并使用无状态替代方案(StatelessForm
而不是Form
,StatelessLink
而不是Link
。)
我用一个无状态页面的示例回答了这个问题:Is it difficult to make a mainly stateless web application with Wicket?
答案 1 :(得分:1)
有关此问题的Jira票证:setVersioned(false) should force single Page Version。问题也已经讨论过in the mailing list。预期的并发症:Page Reload on Submit of non-versioned Page