ContentsIntroductionWhy WELD
Previous: Why Web Application Development | Next: Alternative Solutions

Why WELD

Please read this important update before spending more valuable research time!

According to Sun, the preferred approach to doing web application development is to use Java Server Pages (JSP).  JSP is actually a specialized use of Java Servlets and require the existence and customization of a Java Servlet container (aka "servlet engine").

There are a number of problems with JSP that have been recognized by leaders in the industry.  Rather than to elaborate them here, I recommend that you read Jason Hunter's article "The Problems With JSP".  Jason is the author of the O'Reilly book "Java Servlet Programming", which is presently the best on the topic of servlets.

Jason advocates the use of template processing.  Prior to reading the article (indicated above) I had been an advocate of HTML compilation.  The basic difference between the two approaches is that template processing makes no attempt to use the structure of the HTML document, whereas HTML compilation builds a hierarchy of Java objects to represent all of the elements which are in the document.  Template processing is much simpler and much less expensive (in terms of processing and memory requirements).  HTML compilation, on the other hand, is a perfectly object-oriented approach and gives the Java programmer complete access to the document.

From the web page designer's perspective, the two approaches differ as follows:

From the Java programmer's perspective, the two approaches differ as follows:

There are different strengths in the two approaches, and the contrast above is not intended to establish which characteristics are good and which are bad.  A friend (whose opinion I respect) proofed this page and had completely different opinions about which were the good things.  The deciding factor (in my opinion) is the simplicity of the template processing approach for all concerned parties.  Note that the end user would not be able to distinguish between the two.

The availability of a proven, widely used, and well-supported template processing language (Tool Control Language - TCL) confirmed this decision.  TCL is the "glue" that many programmers have used over the years to integrate different types of legacy systems.  WELD uses the Java implementation of TCL (Java Command Language - JACL) in Java Servlet containers to provide variable substitution and command execution in an HTML template.

Using this approach, WELD symbols (variables and commands) become the subject of conversation between the web page designer and the Java programmer.


ContentsIntroductionWhy WELD
Previous: Why Web Application Development | Next: Alternative Solutions

Modified: Wed Apr 19 06:24:15 EDT 2000