O'Reilly logo

Java Enterprise in a Nutshell, Third Edition by William Crawford, Jim Farley

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

The JSF Expression Language

Now that we’ve established the existence of managed beans, we can talk about the JSF EL . The EL, which is similar but not identical to the JSP EL described in Chapter 4, allows you to write expressions that reference the managed beans in your application. These expressions serve two main purposes in JSF: retrieving values from beans and telling JSF components which bean properties to update. In some cases, the same expression does both, depending on where you are in the request lifecycle.

The general syntax of an EL expression is #{ identifiers and modifiers }. The #{marks the beginning of the expression, and the } marks the end.

Here’s an example of a simple tag that displays a value from a managed bean. In this case, we’re displaying the username property, which is itself a property of the currentUser property of the usersession bean.

    <h:outputText value="#{usersession.currentUser.username}"/>

The <h:outputText> tag is a built-in JSF tag, used to display the value of an expression. We’ll look at more JSF tags in the next section. When working with input controls, the application uses the value expression first to prepopulate the control and then to store the results of the request. The following tag creates a text input control, associated with the username property of the loginform bean:

    <h:inputText value="#{loginform.username}"/>

When the user first loads the JSF page containing this tag, the application displays an HTML input field containing the current ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required