2010-02-23 6 views
1

J'utilise Icefaces pour rendre conditonally un composant, mais il ne peut pas prendre le booléen:JSF/Icefaces conditionnelle rendu

BeanCode:

public boolean isEmpty(){ 
     return true; 
    } 
    public int getCount(){ 
     if (isEmpty()){ 
      return 0; 
     } 
     return 1; 
    } 

IceFaces 

<ice:panelGroup rendered="#{coverage.empty}"> //this doesnt work 
<ice:panelGroup rendered="#{coverage.count==0}"> //this does work 

Message d'erreur: Erreur d'analyse: # {coverage.empty }

Pourquoi IceFaces ne reconnaît-il pas le booléen?

Répondre

2

Comme vous l'avez indiqué, empty est un mot réservé dans le langage d'expression. C'est en effet un opérateur.

Il teste si un élément est null ou vide (par exemple, si votre élément est un String, il teste si sa valeur est null ou "").

Vous pouvez trouver beaucoup d'exemple de EL here.

1

Eteint vide est un mot réservé dans les faces.

+0

Correction: en EL. – BalusC