From the course: Java EE: JavaServer Faces JSF

Servlets vs. JSP vs. Facelets

From the course: Java EE: JavaServer Faces JSF

Start my 1-month free trial

Servlets vs. JSP vs. Facelets

- [Instructor] Web application development in Java EE has taken some time to mature. But what the end uses and the browser has stayed consistent. There have been three presentation technologies in the Java EE ecosystem. We started with Servlets, then became JSPs, or JavaServer Pages, and newest and most recently, Facelets. Java Servlets are the foundation of web application development in Java EE. It's important to know that this includes Java server faces. Servlets allow access to the basic request and response objects that carry information back and forth between the server and the client. After receiving the HTTP request from the browser, you have to painstakingly build the HTML or other markup that constitutes the response from the server. There aren't any utilities for common tasks like validating request, or building markup response, no in-built security features either. JSPs fill a lot of the markup gap, allowing us to focus more on business logic. It introduced JavaServer Pages Standard Tag Library (JSTL), And, more importantly, Expression Language (EL). Both of these are custom XML based markup syntax that are used to code the webpage that is presented to the end user. It allows us to create custom tags to generate custom HTML markup. Unfortunately, JSPs were also slow to load and compile, difficult to debug, and left some work to the developer on basic validation, type conversion, and security. I say were because JSP is deprecated. Web applications using this are incredibly outdated, and poor performing. Facelets is the latest and greatest view presentation technology. Plugging all the gaps left by JSPs and Servlets. It's the default presentation technology for Java server faces, offering markup generation, Expression Language, and JavaServer Pages Standard Tag Library Support, data type conversion, fast compilation, great rendering performance, validation and web application security features. We get a lot more mileage in our Web application development in Java EE using Facelets. At this stage in the evolution of Java Web application technology, we have the best of legacy development technologies without their baggage or hassle. This is the promise that Facelets technology delivers on.

Contents