Bem, você quis dizer qual a vantagem de usar Velocity para gerar views a partir de um servlet, certo? Pois Velocity tem muitas outras aplicações interessantes.
Bem, quanto ao porquê, te dou três razões de minha parte; por favor não as entenda como um ponto de vista a ser considerado para todos:
- com Velocity é quase impossível fazer coisas indevidas na camada view, já que suas funções são limitadas a esse fim.
- macros são bonitas e sempre vão ser
- sintaxe mais simples. Prefiro
#foreach( $o in $objs
$o.name
#end
// feio, mas para exemplificar
<checkbox #if( $b ) selected="true" #end />
a
<c:forEach items="{$users}" var="user">
<c:out value="${user.name}" />
</c:forEach>
// nem imagino como faz com JSP
- “Velocity” é uma palavrinha tão bonita @.@
Mas como eu disse, é muito particular. Do ponto de vista de desenvolvimento dá quase na mesma.