在 c:if 语句中使用 ui:repeat 变量

Use ui:repeat variable in c:if statement

我正在尝试在 ui:repeat 标签内使用 c:if 语句。 但是,在 if 标记内,您无法获取 course.days 的值。它总是评估为空。

    <div id="schedule_wrapper">
        <ui:repeat value="#{schedule.courses}" var="course">                
            <div class="course">
                <b>#{course.shortTitle}</b> : #{course.subjectCode} #{course.courseNumber}-#{course.section}<br /> 
                #{course.roomCode} #{course.buildingName} <br />
                <c:if test="${not empty course.days}">
                    #{course.days} : #{course.startTime} - #{course.endTime}
                </c:if>                                         
            </div>
        </ui:repeat>
    </div>

知道如何在 if 语句中使用 course.days 变量吗?
或实现相同目标的替代方法...
所有其他 course.xxxxx 值作为拉入它们的值。

我找到了实现此目的的替代方法。 而不是:

<c:if test="${not empty course.days}">
    #{course.days} : #{course.startTime} - #{course.endTime}
</c:if> 

我用过:

<h:panelGroup rendered="#{not empty course.days}">
    #{course.days} : #{course.startTime} - #{course.endTime}
</h:panelGroup>

我仍然对 if 语句是否可行感兴趣。

尝试使用内部渲染来检查您的情况。 rendered="#{not empty course.days}" 或 #{course.days > 0} 如果 days 是 Integer

<div id="schedule_wrapper">
    <ui:repeat value="#{schedule.courses}" var="course">                
        <div class="course">
            <b>#{course.shortTitle}</b> : #{course.subjectCode} #{course.courseNumber}-#{course.section}<br /> 
            #{course.roomCode} #{course.buildingName} <br />
            **<ui:fragment rendered="#{not empty course.days}">
                #{course.days} : #{course.startTime} - #{course.endTime}
            </ui:fragment>**                                        
        </div>
    </ui:repeat>
</div>