ITC382 11255412 A1A2
From PeacockWiki
(diff) ←Older revision | Current revision | Newer revision→ (diff)
Assignment 1: | Journal | Non-Technical Article | Technical Article | Technical Report | Demo App |
Technical Article
Weaving Webapps
Tapestry is an open-source servlet providing a powerful framework for efficiently developing Java Web-Applications.
Struts, JSP, Tag Libraries, WebWork, and now Tapestry??? Who cares? Just another web-based Java technology to sit in the attic with all the other failed frameworks? You are forgiven for thinking that, until you read their homepage. All this talk about simplicity, consistency, efficiency, robustness, scalability? yeah, yeah, yeah, more market-speak, but where are these promises on the sites of struts or JSP?
Tapestry does not rely on code generation, it uses a JavaBean based object model and a well designed engine for processing HTML templates (using OGNL expressions), creating an extremely flexible framework that completely separates the HTML from Java. Because Tapestry uses its own engine, it allowed the developers to design the engine to handle much of the "glue" code that would normally exist in a Struts solution, reducing the size and complexity of applications, with some pages not needing Java code at all. The engine transparently handles sessions, making your Java code look more like an application rather the typical sterilised unintuitive objects.
Althought Tapestry is very young, it is very mature in the sense it is applicable to a wide range of applications. Tapestrys learning curve is unusally steep, requiring the understanding of several open standards, as well as the Tapestry engine itself, you quickly discover how much work Tapestry does for you, and how intuitavely it does it. Its use is not wide spread, but its use certainly confirms its power, and its future, finding its way into applications from online dating services to governmental search facilities, and to community forums such as TheServerSide.com.
Assignment 1: | Journal | Non-Technical Article | Technical Article | Technical Report | Demo App |