JSF vs Facelets vs JSP [duplicate]
Solution 1:
- JSF is a standardized Java framework for web UIs based on an MVC pattern
- JSPs are a (much older) standard for generating web pages from templates - these can be used as the View in a JSF application, but also separately from JSF.
- Facelets are an alternative view technology based on pure XML templates (no scriptlets) which was introduced with Version 2 of the JSF standard. They can only be used in a JSF application.
In the light of that, let's take a look at your conflicting statements:
That JSF is a replacement for JSP; and
Not quite true, since JSF can use JSPs for its view (and had to, prior to JSF 2). However, JSF apps using Facelets can be seen as a replacement for JSP-based technologies.
JSF and JSP form different parts of the View in Java's web-tier MVC paradigm
Completely wrong - JSF covers the entire MVC pattern (though it can overlap with EJBs, since both are based on annotations that can be mixed in the same class).
Solution 2:
From Wikipedia article(JSF)
JSF is a request-driven MVC web framework based on component driven UI design model, using XML files called view templates or Facelets views.
JSF is web framework and Facelet is a view template for JSF
From Wikipedia article(JSP)
JavaServer Pages (JSP) is a Java technology that helps software developers serve dynamically generated web pages based on HTML, XML,
Also look at this topic Difference between jsf and jsp