如何使用PrettyFaces重定向回同一页面?

时间:2012-06-09 20:20:53

标签: java jsf prettyfaces

我想知道如何在动作调用中重定向到同一页面。

我有这个命令按钮:

<h:commandButton action="#{someBean.edit}" value="Edit" />

这是行动:

@Named
@RequestScoped
public class SomeBean {

    public String edit() {
        // some logic
        return "theSamePage?faces-redirect=true";
    }

}

但它没有重定向到同一页面,它只是刷新它所以当我尝试通过按F5键刷新页面时,会发生重复提交。在正常情况下,这可以通过post / redirect / get来解决。但是当action方法返回与发送请求的页面的viewId相同的viewId时,faces将不会发送重定向。

我使用prettyfaces。

2 个答案:

答案 0 :(得分:5)

return "pretty:"; 

几乎是你需要的。

答案 1 :(得分:0)

我做了一些搜索并重写了我的答案:

您可以通过以下方式获得漂亮面孔中的视图ID:

      PrettyContext prettyContext = PrettyContext.newInstance((HttpServletRequest) request); 
      String viewId = prettyContext.getCurrentCalculatedViewId();

检查以获取更多信息:https://groups.google.com/group/prettyfaces-users/browse_thread/thread/f50482709d7ec69b?pli=1