O'Reilly logo

Java Servlet Programming, 2nd Edition by William Crawford, Jason Hunter

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 16. Element Construction Set

The Element Construction Set (ECS) package takes a dramatically different approach to content generation than JSP, Tea, and WebMacro. ECS abstracts away the HTML text and treats HTML as just another set of Java objects. A web page in ECS is manipulated as an object that can contain other HTML objects (such as lists and tables) that can contain yet more HTML objects (such as list items and table cells). This “object-oriented HTML generation” model proves to be very powerful, but also very programmer-centric.

Stephan Nagy and Jon Stevens wrote ECS and released it as open source as part of the Java Apache Project, using the Apache license of course. They modeled the library after the commercial htmlKona product from WebLogic, a product which lost support when WebLogic was purchased by BEA Systems. Here we talk about ECS Version 1.3.3, available at http://jakarta.apache.org/ecs.

Page Components as Objects

ECS includes classes for all HTML 4.0 constructs. Example 16-1 shows how a simple HTML page can be constructed with ECS.

Example 16-1. A Page as a Set of Objects

import java.io.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*; import org.apache.ecs.*; import org.apache.ecs.html.*; public class ECSHello extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { res.setContentType("text/html"); PrintWriter out = res.getWriter(); Document doc = new Document(); ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required