How to show JSF components if list is not null and

2019-04-03 19:22发布

问题:

How do I show JSF components if a list is not null and it has a size() > 0?

回答1:

EL offers the empty operator which checks both the nullness and emptiness of an object.

Thus, this should do:

<h:dataTable value="#{bean.list}" var="item" rendered="#{not empty bean.list}">

No need for a clumsy double check on both null and size() as suggested by other answers.

See also:

  • How do I display a message if a jsf datatable is empty?
  • Conditionally displaying JSF components


回答2:

use rendered attribute. most of the components have this attribute.This attribute;s main purpose is to render components conditionally.

<h:dataTable value="#{bean.list}" rendered="{bean.list !=null &amp;&amp; bean.list.size()>0}" >

In the above piece of jsf code, datatable would only be rendered when list is not null and the size of list is greater than 0



回答3:

<h:outputText value="No Data to Display!" rendered="#{empty list1.List2}" />
<a href="#">
<h:outputText value="Data is present" rendered="#{not empty list1.List2}" /></a>

Or

<h:outputText value="#{not empty list1.List2 ? 'Data is Present' : 'No Data to Display'}" style="color:blue"/>