Data Types
A variable is always of a
specific Java type. Besides the standard Java
types for numeric, Boolean, and text values, the EL provides special
support for custom classes developed according to the JavaBeans
guidelines, java.util.Map
objects,
java.util.List
objects, and arrays.
Bean properties can be accessed using the special property accessor operator (a dot), and be nested to any length:
#{aBean.aProperty.aPropertyOfTheProperty.andSoOn}
Map
entries can be accessed the same way:
#{aMap.aKey}
List
and array elements can be accessed using the
array accessor operator (square brackets):
#{aList[0]} #{anArray[0]} #{anArrayOrList[anExressionWithANumbericValue]}
The array accessor operator can also access bean properties and
Map
entries. It must be used
when the property name is determined by a subexpression, the property
name is a reserved word or contains characters used for operators,
such as a dot:
#{aMap[param.customerName]} #{aBean['empty']} #{aMap['com.mycomp.logo']}
A custom javax.faces.el.PropertyResolver
class can
extend or modify how the property and element accessor operators
behave. See Appendix D for details.
Get JavaServer Faces now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.