【问题标题】:List in omnifaces.ListConverter is not set未设置 omnifaces.ListConverter 中的列表
【发布时间】:2019-02-25 02:18:10
【问题描述】:

我正在使用 PrimeFaces 开发 JSF 应用程序。

对于 Picklist,我正在尝试使用 omnifaces.ListConverter,但未设置此转换器中的列表属性。

reporting-edit.xhtml

<p:pickList id="picklist_columns" value="#{reportingEditView.columns}" var="repcolumn"
        itemLabel="#{repcolumn.column.name}" itemValue="#{repcolumn}" responsive="true"
        showSourceFilter="true" filterMatchMode="contains">
<o:converter converterId="benni.ListConverter" list="#{reportingEditView.columns.source}"/>
<f:facet name="targetCaption">Spalten</f:facet>
<p:ajax event="transfer" listener="#{reportingEditView.handleColumnTransfer}"/>

reportingEditView.java

@ManagedBean
@SessionScope

public class ReportingEditView

{
    private DualListModel<RepColumn> columns;

    public void initPickList()
    {
        List<RepColumn> availableColumns = new ArrayList<>();
        List<RepColumn> selectedColumns = new ArrayList<>();

        ... populate availableColumns and selectedColumns ...

        this.columns = new DualListModel<RepColumn>();
        this.columns.setSource(availableColumns);
        this.columns.setTarget(selectedColumns);
    }
}

所有列都显示在我的 PickList 中,但是当我将源列表中的一列放入目标列表时,会抛出 NullPointer,因为未设置转换器中的列表。

在 PickList 中传输元素时也不会调用 listener 方法。

任何想法我做错了什么?

【问题讨论】:

    标签: jsf primefaces omnifaces


    【解决方案1】:

    真丢脸!

    我解决了这个问题。我不知道怎么做,但我的reporting-edit.xhtml 中有xmlns:o="http://java.sun.com/jsf/core"。将其替换为xmlns:o="http://omnifaces.org/ui" 后,一切都像魅力一样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-06
      • 1970-01-01
      • 1970-01-01
      • 2012-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多