2010-05-20 15 views
1

Ce qui suit ne fonctionne pas comme je l'espérais:Mon convertisseur Facelets peut-il dépendre d'une boucle `ui: repeat` var?

<ul> 
    <ui:repeat var="i" value="#{fn:split('1,2,3,4', ',')}"> 
     <li> 
      <h:outputText value="1.2345"> 
       <f:convertNumber 
         minFractionDigits="#{i}" 
         maxFractionDigits="#{i}" /> 
      </h:outputText> 
     </li> 
    </ui:repeat> 
</ul> 

J'espérais voir

  • 1,2
  • 1,23
  • 1,234
  • 1,2345

Au lieu de cela, je vois:

Qu'est-ce que je manque? Je suppose que le convertisseur est initialisé lorsque le Facelet est initialement chargé, avant que la boucle d'exécution ne se produise. Y a-t-il un moyen de contourner ceci?

Mon cas d'utilisation réel implique un composant RichFaces rich:dataTable au lieu d'un ui:repeat, mais l'essentiel est le même.

Répondre

1

Il semble ne pas fonctionner en effet. Même si vous utilisez <h:outputText value="#{1.2345}">, ce qui est plus correct.

Je suppose que si vous en avez besoin, vous devrez préparer la sortie dans le bean géré.