Хорошо, у меня установлен bean-компонент SpeedEngine следующим образом:
<bean id="velocityConfig" class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
<property name="resourceLoaderPath" value="/templates/"/>
<property name="velocityProperties">
<props>
<prop key="input.encoding">utf-8</prop>
</props>
</property>
</bean>
<bean id="viewResolver" class="org.springframework.web.servlet.view.velocity.VelocityViewResolver">
<property name="cache" value="false"/>
<property name="prefix" value=""/>
<property name="suffix" value=".xhtml"/>
<property name="contentType" value="text/html; charset=UTF-8" />
<property name="exposeSpringMacroHelpers" value="true"/>
</bean>
(Кстати, если вы используете Spring Framework), и у меня нет проблем с кэшированием.Но я использую bean-компонент configurer вместо beanfactory.Попробуйте разобраться в этом.
И в том-то и дело, что это тривиально, но все же ..., вы на самом деле повторно развертываете свой проект после изменения шаблона?