2013-12-09 63 views
0

表单数据始终回发到底层页面URL(以保存视图状态)。有没有什么办法(过滤器?),我们可以将请求参数附加到响应url,而不需要任何重定向?操作回发URL请求参数

例如,我有一个page1.xhtml与表单数据。提交表单后,让我们说,我在page1.xhtml本身中得到了结果。但我需要将网址修改为page1.xhtml?view = 1

非常感谢。

+0

您可能需要在POST后执行GET请求。这是通过“重定向”完成的。 –

+0

是的,的确如此。但我想避免重定向。可能是我的问题是重复的http://stackoverflow.com/questions/10352641/handling-view-parameters-in-jsf-after-post – user3073999

+0

嗯...对不起,经过重新思考,这不是重复的http://stackoverflow.com/questions/10352641/handling-view-parameters-in-jsf-after-post。请建议,如果我们真的可以做到这一点。不确定漂亮的脸能在这里帮助吗?非常感谢。 – user3073999

回答

0

我想出了一个解决方案,似乎适用于我的用例没有任何问题。代替PostRedirectGet,我使用HTML5 History API replaceState在页面呈现时在客户端使用请求参数(page1.xhtml?view = 1)将URL替换为带有URL的回发URL(page1.xhtml)。它支持IE10 +,最新的FF/Chrome和带有history.js的旧浏览器(HTML4)。请分享您对此解决方案的看法。非常感谢。