EL handles null values gracefully
A key design decision the developers of EL came up with is to handle null values without throwing exceptions. Why? Because they figured “it’s better to show a partial, incomplete page than to show the user an error page.”
Assume that there is not an attribute named “foo”, but there IS an attribute named “bar”, but that “bar” does not have a property or key named “foo”.
EL | What prints |
| NoteNothing prints out for these expressions. If you say “The value is: ${foo}.” You’ll just see “The value is.” |
| |
| |
| |
| 7 |
| Infinity |
| 7 |
| Exception is thrown |
| false |
| false |
| true |
| true |
| false |
| true |
| true |
Note
In arithmetic expressions, EL treats the unknown variable as “zero”.
Note
In logical expressions, EL treats the unknown variable as “false”.
EL is null-friendly. It handles unknown or null values so that the page still displays, even if it can’t find an attribute/property/key with the name in the expression.
In arithmetic, EL treats the null value as “zero”.
In logical expressions, EL treats the null value as “false”.
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access