Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Invalid
-
Affects Version/s: 1.8.2.GA_P01
-
Fix Version/s: 1.8.2.GA_P02
-
Component/s: Facelet Components
-
Labels:None
-
Environment:-
-
Workaround Exists:Yes
-
Workaround Description:HideCreate a getter in the bean that will return the desired property:
If the Person class contains an Employee reference with a departmentName property, in the Person class create this getter for department name:
public String getDepartmentName(){
return employee.getDepartmentName();
}ShowCreate a getter in the bean that will return the desired property: If the Person class contains an Employee reference with a departmentName property, in the Person class create this getter for department name: public String getDepartmentName(){ return employee.getDepartmentName(); }
Description
public class Person {
int id;
String firstName;
String lastName;
Address address;
.......
public class Address {
private String street;
....
The editableTable does not allow for the following address.street EL expression:
<ice-cc:editableTable bean="#{editableTableExampleBean.editTableBean}" id="editableTable" idProperty="id">
<ice-cc:textColumn title="Street" property="address.street" width="80px" />
-
Hide
- cc_editableTable.war
- 3.25 MB
- Tyler Johnson
-
- META-INF/MANIFEST.MF 0.0 kB
- WEB-INF/lib/backport-util-concurrent.jar 319 kB
- WEB-INF/classes/Address.java 0.2 kB
- WEB-INF/lib/commons-digester.jar 140 kB
- WEB-INF/lib/FastInfoset.jar 285 kB
- WEB-INF/classes/Person.class 1 kB
- ICEfacesPage1.xhtml 1 kB
- WEB-INF/classes/Person.java 0.8 kB
- WEB-INF/lib/jxl.jar 708 kB
- WEB-INF/.../EditableTableExampleBean$EditableTableEventListener.class 2 kB
- WEB-INF/.../EditableTableExampleBean.class 2 kB
- WEB-INF/.../krysalis-jCharts-1.0.0-alpha-1.jar 151 kB
- WEB-INF/.../EditableTableExampleBean.java 2 kB
- WEB-INF/lib/commons-beanutils.jar 226 kB
- WEB-INF/faces-config.xml 0.6 kB
- WEB-INF/classes/.DS_Store 6 kB
- WEB-INF/lib/commons-fileupload.jar 56 kB
- WEB-INF/lib/jsf-impl.jar 816 kB
- index.jsp 0.1 kB
- WEB-INF/classes/Address.class 0.5 kB
- WEB-INF/lib/jsf-api.jar 350 kB
- WEB-INF/web.xml 4 kB
- WEB-INF/lib/commons-logging.jar 52 kB
- WEB-INF/lib/commons-collections.jar 558 kB
- .DS_Store 6 kB
- WEB-INF/.DS_Store 6 kB
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion
The correct syntax to access this property would be #
{varName.prop1.prop2}. Because the composite component is dealing with dynamic properties, we use this syntax in the .xhtml source - #
{row[property]}where property is taken from the component's "property" attribute. It is not possible to use the prop1.prop2 syntax in the square brackets.
This is a limitation we are faced with due to our inability to know the properties we are dealing with when dynamically creating EL expressions. With the current design, we cannot create an expression to access a nested property. A workaround would be to create a getter in the bean that will return the desired property:
If the Person class contains an Employee reference with a departmentName property, in the Person class create this getter for department name:
public String getDepartmentName()
{ return employee.getDepartmentName(); }
The icefaces, icefaces-comps, icefaces-facelets and composite-components jar have been removed. Intended for deployment on tomcat 6.