Velocity

About

Community

Docs

Comparisons

Tools

Velocity v1.2 Released

powered-by-logo.gif Version 1.2 of the Velocity Template Engine is now released. Combining contributions and improvements from throughout the Velocity community, this version offers many new enhancements features and fixes.

Major enhancements include :

  • Application programmers now can instantiate separate, independent instances of the Velocity Template Engine or continue to use the traditional singleton model.
  • Major improvements to Anakia and Texen.
  • The Velocimacro system can be configured to reload changed VM libraries automatically when the macro definitions change.

Minor enhancements are too numerous to mention. Please see the change log for details.

Note: Starting with this release, the distribution will contain two pre-built jars, one with external dependencies included, and one without. Please see the WHY_TWO_JARS.txt note in the distribution for more information.


Velocity News

Luxor, Velocity-based XUL Toolkit Released

Luxor is an open-source XML User Interface Language (XUL) toolkit for Java. Read more here. (2001-12-08)

Generate Code with Velocity in Borland's JBuilder

Read about how to use Velocity and Borland's OpenTools API to extend Borland's JBuilder for template-based Java source code generation. (2001-12-08)

Hey, Maybe We're On The Right Track After All...

Give this a read. The latest version of Resin, a popular servlet engine, has added what they call a "Velocity-like syntax" to their JSP implementation. As they say on their site :
"The Resin-2.0.3 release allows an alternate JSP expression syntax similar to the Apache Velocity project that many find more maintainable than the JSP pointy brackets. Resin's syntax extension is compatible with the usual JSP features like tag libraries."
We do think that this is a step in the right direction for JSPs, making the page content easier to write and maintain.

However, we want to emphasize to users that this isn't the same thing as using Velocity - this is a small subset of the Velocity syntax which was reimplemented in Resin.

Velocity is much more than an alternative syntax to the scriptlets and tags found in JSPs - it's a full-featured templating engine, fully portable to any J2EE servlet container, that offers many advanges over JSPs in the J2EE web application environment. It also an excellent templating tool for other kinds of applications written in Java.

So if you are interested in portable alternatives to JSP, we strongly encourage you look deeper into what Velocity has to offer.

And if you must use JSPs and want to incorporate Velocity into your current or new JSP-based web applications, take a look at our Veltag JSP taglib which allows the full power of Velocity in your JSPs.

Velocidoc Released

Velocidoc, a Velocimacro documentation tool modeled after Javadoc, is now available. Use Javadoc-style comments in your Velocimacro libraries, and use Velocidoc to generate HTML documentation.

New Apache Site Generated with Anakia

The new web site of the Apache Software Foundation is now generated using Anakia, the Velocity-based XML transforamtion tool. Take a look.

Need To Mix JSP and Velocity?

Take a look at a new contribution, a Velocity taglib that lets you use Velocity right in your JSPs.

4 published articles covering Velocity

Getting Up to Speed with Velocity is a really well written article by Jim Jagielski about the merits of using a tool like Velocity.
Many people believe that Velocity can only be used in the context of web applications. This excellent JavaWorld article by Leon Messerschmidt shows that the design of Velocity is such that it can be used in a myriad of applications.
The Java Developer Journal recently published an edited version of the YMTD article by Jon Stevens as the cover story for their July edition.
The Sun Dot-Com Builder developer information site has a "Best Practices" product profile on Velocity. Check it out here. Thanks Sun!

4 Products/Projects Now Depend on Velocity

Gentleware, Xadra and Vamp have built products which depend on Velocity. J/Top, a server monitoring project, also uses Velocity for email output formatting. We have listed them on our ever expanding Powered By Velocity page.

5 Web Frameworks Now Support Velocity

Turbine, JPublish, Melati, Maverick and WebWork all support Velocity. We have listed them on our ever expanding Powered By Velocity page.


What is Velocity?

Velocity is a Java-based template engine. It permits anyone to use the simple yet powerful template language to reference objects defined in Java code.

When Velocity is used for web development, Web designers can work in parallel with Java programmers to develop web sites according to the Model-View-Controller (MVC) model, meaning that web page designers can focus solely on creating a site that looks good, and programmers can focus solely on writing top-notch code. Velocity separates Java code from the web pages, making the web site more maintainable over the long run and providing a viable alternative to Java Server Pages (JSPs) or PHP.

Velocity's capabilities reach well beyond the realm of web sites; for example, it can generate SQL and PostScript and XML (see Anakia for more information on XML transformations) from templates. It can be used either as a standalone utility for generating source code and reports, or as an integrated component of other systems. Velocity also provides template services for the Turbine web application framework. Velocity+Turbine provides a template service that will allow web applications to be developed according to a true MVC model.


Where do I get releases?

The current release version is version 1.1

The release distribution is available in both tar.gz and zip formats, and are found here.

The latest release candidate, verion 1.2-rc1 can be found here.


Where do I get nightly snapshots?

Nightly snapshots of the Velocity CVS can be found here.

These are meant to provide easy access to the actual project CVS tree. As this is our live development workspace, there are no guarantees as to what you will find there,although we do our best to maintain a buildable source tree. If you are looking for the stable supported release, please use the current release of Velocity.

If you are willing to risk getting dirty, we invite you to try the nightly snapshot to see the current state of affairs (and help out!) Public CVS access is also available.


How do I contribute, give feedback, fix bugs and so on?

The Velocity project really needs and appreciates any contributions, including documentation help, source code and feedback. Suggested changes should come in the form of source code and/or very detailed and constructive feedback.



Copyright © 1999-2001, Apache Software Foundation