What is JSTE?
JSTE is a Java-based templating language for producing dynamic content, which is typically useful in web
applications. JSTE's purpose is similar to that of
FreeMarker, with the key difference
for the computational aspects of template expansion. This enables template authors to employ the
Java-based web application implies that the template expansion still occurs on the server side. This is unlike
rely on the browser to perform template expansion.
Netscape Enterprise Server several years ago. However, the present JSTE project seems to be the first
How is JSTE different from other templating languages?
JSTE carries a few advantages:
- It has a low learning curve. Templating languages like FreeMarker and Velocity require you
- It is easy to embed in your Java applications.
- It avoids the compilation cycle overhead that JSP imposes. If you make a change in your template
code, you will see its effect immediately on reloading the page, without having to compile to a Java
- It is compact and fast. Its implementation is just a handful of classes.
- It can be used not just in web applications but in any context where template expansion is
needed. For example, you could use it for sending template-based mass emails from your application.
It does not require servlets or other JSDK components.
What is special about JSTE?
JSTE implements the idea of “doing just one thing and doing it well.”
To that end, JSTE offers only
template expansion with no frills. It does not, for example, provide any framework for web
JSTE tries to reuse prior work, but at the same time minimize dependencies on other components.
The code uses Java generics for type safety, so you will require Java 1.5 or better to compile it.
But you can use the jar files with older versions of Java.
How is JSTE licensed?
JSTE is distributed under the
BSD license. It relies on
under the Mozilla Public License.