从jquery升级primefaces的JS错误从5.2到5.3

时间:2015-12-17 21:06:28

标签: jquery jsf primefaces

我在我的webapps中使用Primefaces Dialog Framework。通过单击p:commandButton显示对话框,代码如下:

<p:commandButton actionListener="#{myBean.myDialogOpen}">
    <p:ajax event="dialogReturn" listener="#{myBean.myDialogClosed}" update="@form" />
</p:commandButton>

它适用于Primefaces 5.2,但是如果我切换到5.3,对话框不再显示,单击按钮后整个页面都被冻结。当我调试代码时,我可以看到DefaultRequestContext.openDialog(...)被正确执行但是在firebug的JS控制台中我从jquery.js(ligne 1,col.231)得到了这个错误:

SyntaxError: missing } after property list

我不知道从哪里开始找出问题所在。有没有人遇到过这个问题?有什么建议吗?

编辑Mahendran,myDialogOpen的代码

public void myDialogOpen() {
    Map<String, Object> options = new HashMap<String, Object>();
    options.put("modal", true);
    options.put("draggable", false);
    options.put("resizable", false);
    options.put("dynamic", true);
    options.put("contentHeight", "'100%'");
    options.put("contentWidth", "'100%'");
    options.put("height", "210");
    options.put("width", "280");
    Map<String, List<String>> params = new HashMap<String, List<String>>();
    if (patientDescription.getLocation() != null) {
        List<String> list = new ArrayList<String>();
        list.add(patientDescription.getLocation().getId().toString());
        params.put("id", list);
    }
    RequestContext.getCurrentInstance().openDialog(
            "/pages/dialogs/origin.xhtml", options,
            params.size() > 0 ? params : null);
}

0 个答案:

没有答案