Hi,

Jakarta is not a piece of software, but an umbrella project for other 
sub-projects (which are pieces of software that more-or-less work 
together).  The overview for the Jakarta project is at

   http://jakarta.apache.org

Two of the Jakarta projects are relevant to your question.

TOMCAT (JSP - JAVA SERVER PAGES)

   http://jakarta.apache.org/tomcat/index.html

Tomcat is the flagship sub-project of the Jakarta project.
It implements the reference implementation of Sun's Java Server
Pages (JSP).  JSP is a sort of templating language.  Each JSP
gets compiled into a Java Servlet (i.e. an object that can be
executed/invoked) on demand.  JSP is analogous in the Perl
world to EmbPerl, the templating approach most closely aligned
with the Apache/Perl integration project (mod_perl).
(i.e. you can, and often must, get down and dirty in the Java
code right there within your "template").

(At this point, I guess it is appropriate to mention that within
the Perl world, there are three contenders for "Template Systems":
EmpPerl, EPerl, and Template Toolkit.  Having investigated them,
I like the Template Toolkit best.

VELOCITY

Because JSP allows (and almost forces) you to code much more than
simply the presentation logic in the template itself, it is often
not referred to as a templating language.  Rather, there are a
class of templating systems that attempt to enforce (and facilitate)
the separation of presentation logic from application logic such as:

  WebMacro - appeared to me to be a leader in this category before Velocity
  Velocity - cloned "WebMacro" and improved it, making it more generally
     useful even outside of a web application environment for all
     template-based file-generation tasks. This project is a sub-project
     of Jakarta.
  Tea - a lesser-known templating system without compelling reasons to
     choose it over Velocity
  XMLC - templating system associated with Enhydra, one of the two
     major contenders as the open-source J2EE platform of choice.

In its spirit, Velocity is very similar to the Template Toolkit.
Velocity is the Template Toolkit, what Embperl is to JSP.

   http://jakarta.apache.org/velocity/index.html

TURBINE

Turbine is actually an application development framework which builds
on WebMacro and Velocity.  It was members of the Turbine team that
built Velocity as a WebMacro clone because they were unclear about
whether the WebMacro license was as free as the Apache Project requires.

   http://jakarta.apache.org/turbine/index.html

In the Perl world, it seems analogous to Open Interact (which builds
upon Template Toolkit as Turbine builds on Velocity).

   http://www.openinteract.org/

Turbine uses Tomcat (for the Servlet support) and Velocity (for the page
templating system) just as OpenInteract can use mod_perl (or mod_cgi) (for
invocation from the webserver) and Template Toolkit (for the page templating
system).

JETSPEED

Jetspeed is kind of a competitor to Turbine (but with different emphases).
It focuses on being able to specify pages in XML and render to any format
required (XHTML, WAP, etc.).  In this sense, it appears analogous in the
Perl world to AxKit (which I understand also builds upon Template Toolkit).

   http://jakarta.apache.org/jetspeed/index.html
   http://www.axkit.org/

In conclusion, Velocity is the closest match for the Template Toolkit if you
want to code in Java.

For web application development in general in Java, I recommend the
following open source technologies. (These are all complementary, and
for the most part, are not redundant or competing.)

   Apache httpd (web server) + mod_ssl/OpenSSL (SSL support)
   Apache Tomcat (for Servlet support) (don't use the included JSP capability)
   Apache Velocity (for a templating system, instead of JSP)
   Apache Turbine (or parts thereof, for an application development framework)
   Apache XML Tools (xml.apache.org) for all manner of server-side XML stuff
   Apache Log4j (for server-side logging)

If J2EE compliance is required or if the higher-end features of EJB servers
are
required, consider replacing the use of some features of Turbine for the
following:

   JBoss (for EJB server support if necessary) (JBoss provides the rest of the
          J2EE environment that Tomcat does not supply)
   Castor (for sophisticated BMP-based persistence)

Stephen Adkins

P.S. Great job on Template Toolkit everyone.
     Perl is a great environment for productivity.

At 04:06 PM 5/21/2001 -0700, Rasoul Hajikhani wrote:
>Hi all,
>This may be a wrong place to ask this question, but I was wondering if
>any one was aware of a Templating project that would work with Jakarta
>(or in a Java environment)?
>Thanks in advance
>-r
>
>_______________________________________________
>templates mailing list
>[EMAIL PROTECTED]
>http://www.template-toolkit.org/mailman/listinfo/templates
>



Reply via email to