以下是bean A中的方法:
@Transactional
public void updateBO() {
boolean hasLinkedReq = true;
update();
if(hasLinkedReq) {
showDialog();
}
}
private void update() {
// do some stuff
}
public void showDialog() {
//shows confirmDialog
}
以下是bean B中的方法:
public void saveChanges() {
updateBO();
}
@Transactional
public String close() {
// save something to database
return "pretty:requests";
}
,这是在xhtml:
<p:commandButton id="confirmSaveCloseBtn"
value="#{msg['closeunsaved.btn.saveclose']}"
actionListener="#{productRequest.saveChanges}"
action="#{productRequest.close}"
oncomplete="confirmCloseUnsaved.hide()"
disabled="#{not requestChecklist.hasWritePermission()}" />
因此,不调用showDialog()方法。或者至少在重定向之前没有调用它。当我尝试在新窗口中重定向时,我看到showDialog()显示在第一个窗口中,但是在重定向之后。
你能帮我解决这个问题吗?谢谢!