Moving Between JSF Views
In addition to the main functionality, the sample application lets the user edit preferences through a separate set of screens. The application ignores all preference settings, but looking at how these preferences screens are implemented illustrates how JSF navigation works.
On a regular web site, links are used to navigate between different
pages. A JSF web application may also use links, and
there’s a special action element that you should use
to add a link to a page. It’s the
<h:outputLink>
action element, and
here’s how it’s used in the sample
application’s menu area:
... <h:outputLink value="prefUser.faces"> <h:outputText value="Preferences" /> </h:outputLink> ...
The action uses the value
attribute to render the
corresponding HTML <a>
element’s href
value, with an
encoded session ID if needed for cookie-less session tracking. Nested
<f:param>
action elements can be used to add
query string parameters (see Appendix A for details). The link text
is taken from the value of one or more child components, such as the
output component represented by the
<h:outputText>
element in this example.
Figure 9-1 shows the menu area with the generated
link in a browser.
Navigation through a direct link is simple and sufficient in many cases, but not when user input must be processed before moving on to the next ...
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.