我使用PrimeFaces并有一个Save按钮,基本上我的页面会发送maintenanceTask,我在这里编辑它,然后按Save,它应该保存到数据库然后重定向到原始页面。我有一个有效的保存方法,但似乎无法同时启动导航和方法。
<p:commandButton value="#{message.commonButtonSave}"
title="#{message.commonSaveTooltip}"
rendered="#{maintenanceTaskEnquiryBean.screenMode == 'editTasks'}"
disabled="#{maintenanceTaskEnquiryBean.outstandingEditCount != 0}"
action="/definemaintenance/MaintenanceTasksActivity"
actionListener="#{maintenanceTaskEnquiryBean.save}" >
</p:commandButton>
我现在有什么,但我尝试了很多不同的变体,包括p:button和p:commandButton,listener / actionListener,target / outcome / action等......
有什么建议吗?
感谢。
答案 0 :(得分:1)
如果您想要执行操作并在之后导航,请使用action
属性并返回导航规则。
<p:commandButton value="#{message.commonButtonSave}"
title="#{message.commonSaveTooltip}"
rendered="#{maintenanceTaskEnquiryBean.screenMode == 'editTasks'}"
disabled="#{maintenanceTaskEnquiryBean.outstandingEditCount != 0}"
action="#{maintenanceTaskEnquiryBean.save}">
</p:commandButton>
save()
方法看起来像这样
public String save() {
// perform whatever you need to, and then
return "<some navigataion rule>";
}
返回字符串应该打开所需的页面/definemaintenance/MaintenanceTasksActivity
。