Follow @
OH
P
If you want something that is fast, integrates very well with Java and is relatively easy to debug, extend etc, PNuts is really a good choice.
There may be more powerful template engines out there, but Velocity is very easy to handle and it just works without getting in your way.