From the course: Java EE: JavaServer Faces JSF

What is JSF and why use it?

From the course: Java EE: JavaServer Faces JSF

Start my 1-month free trial

What is JSF and why use it?

- [Instructor] So what is JavaServer Faces? Simply put, it's a component-based Java EE framework for building web applications. Or as I like to say, it's object-oriented web application development for the Java developer. JSF aims to provide a web application framework that adheres to the model-view-controller pattern that's MVC and is supported by an event-driven programming model and allows the developer to build in a natural-feeling, object-oriented manner more akin to what a regular Java developer is used to. JSF is built as a platform and a very robust one at that. What I mean is that JSF starts as a technical specification, you know, a document that states how the software needs to be built or how it needs to behave so that software vendors like Red Hat or Apache could build a library that conforms to the specification standards. Then software vendors implement the version of the framework as concrete libraries. Oracle has the Mojarra implementation, which is the reference implementation that the community has adopted and is the most popular version in the Java EE community. We have the MyFaces edition from the Apache group. And we also have the ADF implementation. This course is based on the Mojarra implementation of JSF, so you will find a lot of material online to support your development. JSF provides a number of easy-to-use UI components that help web developers build very powerful Ajax-enabled UIs in the web tier. It also provides fine-grained control in the back end with basic Java programming. Okay, so why use JSF? JSF as a platform provides a convenient, native job of programming feel with cutting-edge components in an object-oriented context. Traditional Java developers with no experience with scripting languages like JavaScript or PHP get to build feature-rich web applications without needing to know any scripting whatsoever. JSF ships with security and performance features that reduce the amount of configuration and code that a DEV needs to worry about. It's an open platform that has encouraged a lot of participation and support in the community. As a piece of the Java EE platform, we have the benefit of using other Java EE technologies within our JSF application with very little effort. For example, EJBs, SOAP and REST web service pieces, and so much more are easily made available within your web application. As a framework, there's a rich ecosystem of third-party plugins and component libraries that greatly enhance and simplify the user and development experience of working on a JSF application.

Contents