DD.
DD.

Reputation: 21991

JSF/IceFaces Conditional Rendering

I am using Icefaces to conditonally render a component but it cant pick up the boolean:

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

Error message: Error Parsing: #{coverage.empty}

Why is IceFaces not recognising the boolean?

Upvotes: 1

Views: 5503

Answers (2)

Romain Linsolas
Romain Linsolas

Reputation: 81627

As you stated, empty is a reserved word in Expression Language. It is indeed an operator.

It tests if an element is null or empty (for example, if your element is a String, it tests if his value is either null or "").

You can find many example of EL here.

Upvotes: 3

DD.
DD.

Reputation: 21991

Turns out empty is a reserved word in faces.

Upvotes: 1

Related Questions