jsf – p:编辑器在初始页面加载时显示“true”

我已经将一个编辑器组件插入到一个简单的表单中,当加载网页而不是预定义的文本(问号)时,我在编辑器中看到了单词true.

我试图从模板中剪切html特殊字符,查看另一个SO答案(大多数是关于< p:ajax>而不是< f:ajax>并且在对话框中放置编辑器,情况并非如此这里).我正在使用PrimeFaces 5.2.

我的控制器:

@ViewScoped
@ManagedBean(name = "mailTemplateBean")
public class MailTemplateBean extends BaseWebBean {

    @PostConstruct
    public void init() {
        text = "?????????????";
    }

    private String text;

    public String getText() {
        return text;
    }

    public void setText(String text) {
        this.text = text;
    }
}

我的看法:

<h:form id="form">
    <p:editor id="editor" widgetVar="editorWidget"
        value="#{mailTemplateBean.text}" width="600" />
    <p:commandButton value="Update" update="editor"
        icon="ui-icon-disk" />

</h:form>

更新:Chrome和Firefox中的行为不同. Chrome – 启动编辑器禁用并清空.只有当我单击命令按钮时 – 它才会刷新并显示正确的文本.上面描述了什么 – 它是如何在Firefox中工作的.

最佳答案 我不确定这是否打算如何工作,但我修复了问题,将以下行放入表单中:

<p:remoteCommand name="rc" update="editor" autoRun="true"/>

它在加载页面后刷新编辑器,并正确显示辅助bean的值.

点赞