Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Cannot Reproduce
-
Affects Version/s: 3.1.0.RC1
-
Fix Version/s: 3.2
-
Component/s: None
-
Labels:None
-
Environment:Mojorra 2.1.10, ICEfaces 3.1.0.RC1 vs. ICEfaces 3.0.1
-
ICEsoft Forum Reference:
Description
I have the following in an XHTML file
<ui:repeat var="codeValue" value="#{crfItemInstance.selectableCodeValues}" rendered="#{!codeValue.subGroupExistent}"/>
and the following underlying Java code within CRFItemInstance.java
public List<CodeListItem> getSelectableCodeValues() {
return this.selectableCodeValues;
}
and within CodeListItem.java also
public boolean isSubGroupExistent() {
return this.subGroupExistent;
}
Using the above in ICEfaces 3.0.1 with Mojorra 2.1.10 works fine but for ICEfaces 3.1.0.RC1 with Mojorra 2.1.10, I get the following exception
javax.el.PropertyNotFoundException: /pages/print/crfPrintInstance.xhtml @49,151 rendered="#{!codeValue.subGroupExistent}": Property 'subGroupExistent' not found on type javax.faces.model.SelectItem
So it seems that "#{crfItemInstance.selectableCodeValues}" returns a collection of SelectItem objects instead of a collection of CodeListItem objects.
<ui:repeat var="codeValue" value="#{crfItemInstance.selectableCodeValues}" rendered="#{!codeValue.subGroupExistent}"/>
and the following underlying Java code within CRFItemInstance.java
public List<CodeListItem> getSelectableCodeValues() {
return this.selectableCodeValues;
}
and within CodeListItem.java also
public boolean isSubGroupExistent() {
return this.subGroupExistent;
}
Using the above in ICEfaces 3.0.1 with Mojorra 2.1.10 works fine but for ICEfaces 3.1.0.RC1 with Mojorra 2.1.10, I get the following exception
javax.el.PropertyNotFoundException: /pages/print/crfPrintInstance.xhtml @49,151 rendered="#{!codeValue.subGroupExistent}": Property 'subGroupExistent' not found on type javax.faces.model.SelectItem
So it seems that "#{crfItemInstance.selectableCodeValues}" returns a collection of SelectItem objects instead of a collection of CodeListItem objects.
Since there is no complete test app. provided, I modified QA test for calendar inside <ui:repeat> to be similar to above code snippets to test, but I couldn't reproduce problem. Everything worked fine. Snippets of modified code:
{calendarRepeatBean.calendars}<ui:repeat id="calRepeat1" value="#
" var="calendar" rendered="#
{!calendar.subGroupExistent}">
{ return calendars; }public List<Calendar> getCalendars()
public class Calendar extends javax.faces.model.SelectItem {
{ return subGroupExistent; }public boolean isSubGroupExistent()