我正在使用PrimeFaces 6.0,並且發現了使用嵌套對話框的問題。 RequestContext.openDialog無法正常工作。它不會拋出任何異常,但不會打開對話框。PrimeFaces openDialog在嵌套對話框中無法正常工作
我建立了5頁(P1到P5)基於相同的整頁佈局。每頁包含一個p:dataTable。 p:dataTable具有p:列與p:commandButton在新對話框中打開下一頁。這是我發現的:在其中一些頁面上,第一行的按鈕不起作用;其餘行的按鈕正常工作。
該問題似乎並不是行數據固有的。當第一行的按鈕失敗時,無論顯示在哪裏的行都失敗。行可以按不同的方式排序(因此第一行可能會有所不同),第一行的按鈕將繼續失敗,其餘按鈕將繼續工作。這個問題似乎也不是頁面固有的。當頁面是根(打開第一個對話框的頁面)時,所有按鈕都可以正常工作。該問題只發生在對話框中。
這是按鈕:
<p:commandButton
icon="fa fa-folder-open"
action="#{ambientePrueba11.openDialog(currentRow)}"
partialSubmit="true"
process="@this"
update="@none">
<p:ajax
event="dialogReturn"
listener="#{ambientePrueba11.onDialogReturn}"
update="dataTable"/>
</p:commandButton>
這是在背襯豆的代碼(每個5種豆的具有不同的結果,但該代碼的其餘部分是相同的):
public String openDialog(AmbientePrueba row) {
EventLogger.log(this, "openDialog", getDenominacion(row));
Object identificacion = getIdentificacion(row);
String key = "PaquetePrueba11";
String outcome = FacesUtils.getPageKeyFacesOutcome(key);
Map<String, Object> options = new HashMap<>();
options.put("modal", true);
options.put("resizable", true);
options.put("draggable", true);
options.put("width", 1260);
options.put("height", 860);
options.put("contentWidth", "100%");
options.put("contentHeight", "100%");
options.put("closable", true);
options.put("includeViewParams", true);
options.put("minimizable", true);
options.put("maximizable", true);
Map<String, List<String>> params = new HashMap<>();
params.put(CPP.ID_RECURSO, toList(identificacion));
params.put(CPP.ID_RECURSO_MAESTRO, toList(identificacion));
params.put(Global.PARAMETRO_FRAMEWORK_SESION, toList(getSessionFrame()));
params.put(Global.PARAMETRO_CONDICION_SESION, toList(MODAL));
RequestContext.getCurrentInstance().openDialog(outcome, options, params);
return null;
}
private List<String> toList(Object value) {
List<String> paramValue = new ArrayList<>();
paramValue.add(value + "");
return paramValue;
}
public void onDialogReturn(SelectEvent event) {
Object response = event.getObject();
facesLogger.info(response + "");
}
其他人發現了類似的問題嗎?任何幫助解決或解決這個問題將非常感激。
任何JavaScript錯誤? –