Skip to Content
JavaServer Faces
book

JavaServer Faces

by Hans Bergsten
April 2004
Intermediate to advanced
606 pages
20h 4m
English
O'Reilly Media, Inc.
Content preview from JavaServer Faces

Dealing with Syntax Errors in User Input

In Chapter 6, we created a few components, arranged them as a component tree in a view, rendered them to the browser, and saved the view state either in the response itself or on the server. Presumably, there’s a user sitting there admiring our nice form with an input field and a button. Let’s see what happens when she submits the form.

First, JSF must figure out which view to use for processing the request. This information is encoded in the URI itself. As you may recall from Chapter 6, we’ve decided to use the default extension mapping for JSF requests, so the request paths always end with a .faces suffix. The view ID is the context-relative path with .faces replaced by .jsp. So with a context-relative path like /test.faces, the view ID is /test.jsp. JSF uses this ID to locate the state information on the server, or retrieve it from the request data if it was previously passed to the client with the response. It rebuilds the component tree, and then calls restoreState() on all components so they can get back their old internal state.

Next, each component is asked to look for its value in the request. JSF calls a method called decode() on each component to accomplish this task. As with rendering, components typically delegate this task to an associated renderer; if a renderer was used to render the component, it’s the one most likely to know how to find the component’s value in the request.

For HTML, component values are sent as HTTP request ...

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

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Mastering JavaServer Faces 2.2

Mastering JavaServer Faces 2.2

Anghel Leonard

Publisher Resources

ISBN: 0596005393Errata Page