如何在JSF标签selectOneMenu中使用转换器?

时间:2018-03-20 13:36:42

标签: jsf primefaces jsf-2 converter selectonemenu

以下示例适用于我的界面:

<h:outputText value="#{diplome.pays}">
    <gn:converter origine="#{config.origManSirhen}"
                  nomenclature="#{config.codePays}"
                  propriete="libelleImpression" />
</h:outputText>

然而,当我尝试使用相同的转换器时,当元素是selectOneMenu

时,它不起作用
<p:selectOneMenu id="pays">
    <f:selectItem
        itemValue="#{InformationsPersonnellesModele.adressePrincipale.pays}"
        itemLabel="#{InformationsPersonnellesModele.adressePrincipale.pays}" />
    <gn:converter origine="#{config.origManSirhen}"
        nomenclature="#{config.codePays}" propriete="libelleImpression" />
</p:selectOneMenu>

我已尝试将属性converter用于selectOneMenu标记,但它无法正常工作,因为我还需要使用参数命名和propiete。

1 个答案:

答案 0 :(得分:0)

我找到了一个可能的解决方案:

默认选择的项目必须是selectOneMenu代码的值。

项目列表和转换器直接分配给selectItems标记的值。

<p:selectOneMenu id="pays"
    value="#{InformationsPersonnellesModele.adressePrincipale.pays}">
    <f:selectItems
        value="#{gnl:listeTri(config.origManSirhen, config.codePays,'libelleImpression')}" />
</p:selectOneMenu>