我的Java EE应用程序我有文章管理。有像http://localhost:8080/articles/detail.xhtml?article=70
这样的网址,其中文章意味着文章的ID。此页面显示文章评论等,这并不重要。但是有按钮编辑,我想在页面edit.xhtml上重定向,但用户仍然应该看到http://localhost:8080/articles/detail.xhtml?article=70
,因为我不希望编辑页面是可收藏的。
你能帮我解决一下如何设置faces-config来改变页面而不是网址吗?我想如果我不写<redirect />
,那么网址会保持不变,但我错了。网址从detail.xhtml?article=70
更改为detail.xhtml
感谢您的任何建议。
答案 0 :(得分:2)
我建议引入一些ajaxical权力,以便不会触发同步请求。
<h:panelGroup id="article" layout="block">
<h:panelGroup rendered="#{!bean.editmode}">
View article (can if necessary be an ui:include)
<h:form>
<h:commandButton value="Edit" action="#{bean.edit}">
<f:ajax render=":article" />
</h:commandButton>
</h:form>
</h:panelGroup>
<h:panelGroup rendered="#{bean.editmode}">
Edit article (can if necessary be an ui:include)
<h:form>
<h:commandButton value="Save" action="#{bean.save}">
<f:ajax render=":article" />
</h:commandButton>
</h:form>
</h:panelGroup>
</h:panelGroup>
豆:
private boolean editmode;
public void edit() {
this.editmode = true;
}
public void save() {
this.editmode = false;
}
public boolean isEditmode() {
return editmode;
}