【问题标题】:JSF 2.0 + Primefaces richtext editorJSF 2.0 + Primefaces 富文本编辑器
【发布时间】:2011-04-11 22:45:00
【问题描述】:
<p:editor value="#{editorBean.value}"  widgetVar="editor" width="686"
height="390" language="en" align="center">
</p:editor>

以下是我从 primefaces 中提取的富文本编辑器 bean

@ManagedBean(name = "editorBean")
@SessionScoped
public class EditorBean {
    private static final String MANAGED_BEAN_NAME = "editorBean";
    private String value;
    public static EditorBean getCurrentInstance() {
        return (EditorBean) FacesContext.getCurrentInstance()
            .getExternalContext().getRequestMap().get(MANAGED_BEAN_NAME);
    }

    public void setValue(String value) {
        this.value = value;
    }

    public String getValue() {
        return value;
    }
}

除此之外,我还有另一个 bean 说 A。我在 A 中有一个填充 HTML 表的方法。我想要的是当用户打开编辑器时,它应该预先填充该 HTML 表格数据,当然更改应该反映到(字符串:值)中。因此,你可以说我试图将这两个价值观联系在一起。我认为它需要用 DI 来完成,但不知何故它不起作用。如果有人可以指导或引用示例,那将非常有帮助。

【问题讨论】:

    标签: dependency-injection jsf-2


    【解决方案1】:

    一种方法是重写您的getValue() 方法以从bean A 中获取值。 是的,对您的 A bean 的引用应该来自 DI:

    //injecting a reference to A
    @ManagedPropery(value="#{A}") //or whatever is the name of your bean
    private A beanA;
    
    public void setBeanA(A beanA) {
        this.beanA = beanA;
    }
    

    或者,使用 CDI,只需:

    @Inject private A beanA
    

    最后,你的getValue 方法

    public String getValue() {
        return beanA.getValue()
    }
    

    【讨论】:

      猜你喜欢
      • 2011-03-02
      • 1970-01-01
      • 2011-06-18
      • 1970-01-01
      • 2016-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多