I'm having trouble with JSP's <c:if test="">. <c:if test="true"> and <c:if test="false"> work as expected. But the following snippet doesn't:
<p:dataTable value="#{orderMB.allAdTypes}" var="ad">
<c:if test="ad.isNotFullPage()">
<p:column headerText="Type">
<h:outputText value="#{ad.typeToString}" />
</p:column>
</c:if>
<p:column headerText="Name">
<h:outputText value="#{ad.name}" />
</p:column>
</p:dataTable>
I only see one column; ad.isNotFullPage() is never called. I've tried all combinations of test="#{ad.isNotFullPage()}, test="${ad.isNotFullPage()}", test="#{ad.isNotFullPage} (this last in the hopes that ad.getIsNotFullPage() gets called.)
orderMB is a @ManagedBean @ViewScoped. orderMB.getAllAdTypes() returns List<AdType>. AdType is @Entity @Table(name = "ad_type").
This is running on Glassfish 3.1, JDK 1.7.