Java view technologies and frameworks: Difference between revisions

Content deleted Content added
links
Line 1:
'''Java view technologies and frameworks''' are [[web-based]] [[software libraries]] that provide the [[user interface]], or "[[Model–view–controller|view-layer]]", of [[Java (programming language)|Java]] [[web applicationsapplication]]s. Such frameworks[[application framework]]s are used for defining [[web pagespage]]s and handling the [[HTTP]] [[List of HTTP header fields#Requests|requests]] (clicks) generated by those web pages. As a sub-category of [[web application frameworks]], view-layer frameworks often overlap to varying degrees with web frameworks that provide other functionality for Java web applications.
 
Java view-layer frameworks often claim to support some or all of the [[Model–view–controller]] design pattern.
Line 17:
|}
 
* [[JavaServer Faces]] (JSF), [[Apache Tapestry]] and [[Apache Wicket]] are competing component-based technologies, abstracting the [[Stateless protocol|stateless]] HTTP request-response cycle and the servlet[[Java Servlet API]] behind an [[Object-oriented programming|object-oriented]], event-driven component model.
* In contrast, Struts and the [[Spring MVCFramework]] are action-oriented frameworks that provide a thinner [[abstraction layer]] over the servlet [[API]].
* Apache Tiles is a templating framework designed to work with Struts.
* [[Facelets]] is a view definition and templating technology designed to work with JSF.
* [[SiteMesh]] can be used with any [[JavaServer Pages|JSP]].
* Facelets, Tapestry and Wicket have their own templating approaches based on [[HTML]]/[[XHTML]].
* [[Apache Click]] uses HTML based velocity[[Apache Velocity]] templates and plain[[Plain oldOld Java objectsObject]]s, with JSP[[JavaServer Pages]] optional.
 
==Servlet API==
 
The Servlet API is the foundation of almost all Java View technologies. Servlets provides the basic mechanism for writing Java [[Class (computer programming)|classes]] for web applications. Servlets can respond to HTTP requests, create cookies and maintain sessions.
 
==JavaServer Pages (JSP) ==