In this chapter, we will cover JavaServer Faces (JSF), the standard component framework of the Java EE platform. Java EE 8 includes JSF 2.3, the latest version of JSF. JSF relies a lot on convention over configuration—if we follow JSF conventions then we don't need to write a lot of configuration. In most cases, we don't need to write any configuration at all. This fact, combined with the fact that web.xml has been optional since Java EE 6, means that, in many cases, we can write complete web applications without having to write a single line of XML.
We will cover the following topics in this chapter:
- Facelets
- JSF project stages
- Data validation
- Named beans
- Navigation
- Ajax-enabling JSF applications
- JSF HTML5 support
- Faces flows
- JSF artifact injection
- JSF WebSocket support
- JSF component libraries