The Relationship Between JSF and Other Java EE Technologies

By: Emiley J Viewed: 153230 times  Printer Friendly Format    

Within the Java Platform, Enterprise Edition 5 (Java EE 5), technologies such as JSP and Servlet are stand-alone technologies. You could, if you wanted to, create an application using only servlets or only JSP pages. JSF is different because it is a supporting technology. You use it in conjunction with JSP pages, servlets, or other presentation technologies.

The primary design pattern of JSF is the Model-View-Controller (MVC) pattern. As you saw in Model 2 Architecture, MVC separates an application architecture into three categories of components:
model, view, and controller. The model is the abstraction of all the domain data in the system. It is the bank account in a banking application, or a shopping cart in an e-commerce system. The view is the visualization of the model. In a web application, the view consists of the HTML pages and the components that create the HTML pages sent to web browsers, the Wireless Application Protocol (WAP) pages sent to mobile devices, or the UI components sent to a dedicated client. The controller is the set of components that manage the communications between model and view.

You can create user interfaces with JSP. In fact, JSP was designed to make the view component of a web application easy to create and manage. It is also possible, although not as easy, to create UIs with servlets. However, combining JSF with JSP or Servlet technology makes UI creation—and integration of thecmodel, view, and controller—easier by f ar. JSF brings a component-based model to web application development that is similar to the model that has been used in stand-alone GUI
applications for years.

To use JSF with servlets, you use the components that make up JSF directly; that is, within your servlet, you explicitly create and use instances of UI component classes. The JSF implementation
includes a tag library of custom tags, similar to the JSTL , that you can use with JSP to easily create JSF-enabled applications.

Most Viewed Articles (in JSF )

Latest Articles (in JSF)

Comment on this tutorial