Differences between revisions 1 and 2
Revision 1 as of 2004-12-06 23:24:21
Size: 1363
Editor: adsl-64-169-88-39
Revision 2 as of 2009-09-20 22:06:06
Size: 1373
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
This page contains the slides and code from the [http://www.apachecon.com/2004/US/html/ 2004 ApacheCon] session "Hacking Velocity". (March 17, 2004). This page contains the slides and code from the [[http://www.apachecon.com/2004/US/html/|2004 ApacheCon]] session "Hacking Velocity". (March 17, 2004).
Line 17: Line 17:
 * Powerpoint slides from talk - attachment:hackingvelocity.ppt
 * Java code and buildfiles for examples - attachment:samplecode.zip
 * Powerpoint slides from talk - [[attachment:hackingvelocity.ppt]]
 * Java code and buildfiles for examples - [[attachment:samplecode.zip]]

Hacking Velocity

This page contains the slides and code from the 2004 ApacheCon session "Hacking Velocity". (March 17, 2004).


Velocity, the popular Jakarta templating language, can be used "out of the box" to produce dynamic HTML, generate code, and for a variety of other purposes. But what if you want to customize the Velocity language or environment? This session provides tips for the intermediate to advanced Velocity developer on how to provide additional functionality to your Velocity users. The following topics will be covered. All of these enhancements can be down without recompiling the Velocity jar files.

  • Increasing developer productivity with the Velocity-Tools subproject
  • Adding new template control statements with a custom directive
  • Changing functionality with an event handler
  • Loading your templates with a custom resourceloader
  • Creating a secure Velocity hosting service with a custom introspector

If time allows, we'll discuss how to change the language syntax itself by using JavaCC and recompiling Velocity.

Questions or Comments?

Contact Will Glass-Husain, wglass@forio.com

HackingVelocity (last edited 2009-09-20 22:06:06 by localhost)