我想在点击导入文件并执行后端操作的按钮后重新加载页面。
这很有效,但是当页面重新加载时,url-parameter缺失。
部分代码:
<h:commandButton value="File Upload" action="#{Bean.importFile}" >
</h:commandButton>
并在Bean中:
public String importFile(){
//backend-stuff
refreshPage();
return null;
}
protected void refreshPage() {
FacesContext fc = FacesContext.getCurrentInstance();
String refreshpage = fc.getViewRoot().getViewId();
ViewHandler ViewH =fc.getApplication().getViewHandler();
UIViewRoot UIV = ViewH.createView(fc,refreshpage);
UIV.setViewId(refreshpage);
fc.setViewRoot(UIV);
}
网址为:this article
Bean有一个managedProperty来获取processId。
因此,如果我点击按钮,则重新加载的页面为:http://localhost:8080/ca/process.html?pid=12345
如何将?pid = 12345传递给我的Bean中的URL?
答案 0 :(得分:-1)
您可能想要重定向:
FacesContext fc = FacesUtil.getFacesContext();
ExternalContext ec = fc.getExternalContext();
ec.redirect("redirection_url");