In this section, you will get a brief description about Expression Language of JSF.
Expression Language(EL)
In this section, you will get a brief description about Expression Language of JSF.
Expression Language is used to access the JavaBeans component in the JSF web application.
Syntax of EL expression
The syntax of the EL expression is : # { expression }
It is similar to JSP expression language but have following differences from it :
- The syntax of both contains { }curly braces inside it expression
resides. But JSP EL starts with $ and JSF EL starts with #.
- The value binding methods of JSF don't support expression language
methods of JSP.
Expression language Literals
The JSF EL supports following literals :
- Boolean: true and false
- Integer: as in Java
- Floating point: as in Java
- String: with single and double quotes; " is escaped as \", ' is escaped
as \', and \ is escaped as \\.
- Null: null
Expression language Operators
The Operators supported by JSF EL with operators precedence , from left to right(highest to lowest), is given below :
- []
- () (changes precedence of operators)
- - (unary) not ! empty
- * / div % mod
- + - (binary)
- < > <= >= lt gt le ge
- = = != eq ne
- && and
- || or
- ? :
Expression language Examples
Some of Example of EL is given below :
JSF EL Expression | Result |
${1 > (4/2)} | false |
${4.0 >= 3} | true |
${100.0 == 100} | true |
${(10*10) ne 100} | false |
${?a? < ?b?} | true |
${?hip? gt ?hit?} | false |
${4 > 3} | true |
${1.2E4 + 1.4} | 12001.4 |
${3 div 4} | 0.75 |
${10 mod 4} | 2 |
${!empty param.Add} | False if the request parameter named Add is null or an empty string. |
${pageContext.request.contextPath} | The context path |
${sessionScope.cart.numberOfItems} | The value of the numberOfItems property of the session-scoped attribute named cart. |
${param[?mycom.productId?]} | The value of the request parameter named mycom.productId. |
${header["host"]} | The host |
${departments[deptName]} | The value of the entry named deptName in the departments map |
${requestScope[?javax.servlet.forward.servlet_path?]} | The value of the request-scoped attribute named javax.servlet.forward.servlet_path |
#{customer.lName} | Gets the value of the property lName from the customer bean during an initial request. Sets the value of lName during a postback |
#{customer.calcTotal} | The return value of the method calcTotal of the customer bean. |