JSF provides a rich expression language. We can write normal operations using #{operation-expression} notation. Some of the advantages of JSF Expression languages are following.
1: Can reference bean properties where bean can be a object stored in request, session or application scope or is a managed bean.
2: Provides easy access to elements of a collection which can be a list, map or an array.
3: Provides easy access to predefined objects such as request.
4: Arithmetic, logical, relational operations can be done using expression language.
5: Automatic type conversion.
6: Shows missing values as empty strings instead of NullPointerException.