web-dev-qa-db-ja.com

ローダーの速度経路を適切に設定する方法

私のvelocityengineが設計されたパスからテンプレートを探すようにしたいと思います。これは私がしました :

<bean id="velocityEngine" class="org.springframework.ui.velocity.VelocityEngineFactoryBean">
 <property name="velocityProperties">
   <value>
     resource.loader=class
     class.resource.loader.class=org.Apache.velocity.runtime.resource.loader.ClasspathResourceLoader
     class.resource.loader.resourceLoaderPath=/mytemplates
   </value>
 </property>

しかし、まだクラスフォルダでテンプレートを探しています。何か案が?

14
storm_buster

春に示されているように documentation 、次のことを試すことができます。

<bean id="velocityEngine" class="org.springframework.ui.velocity.VelocityEngineFactoryBean">
  <property name="velocityProperties">
    <props>
      <prop key="resource.loader">file</prop>
      <prop key="file.resource.loader.class">
        org.Apache.velocity.runtime.resource.loader.FileResourceLoader
      </prop>
      <prop key="file.resource.loader.path">${webapp.root}/WEB-INF/velocity</prop>
      <prop key="file.resource.loader.cache">false</prop>
    </props>
  </property>
</bean>

または、これらのプロパティをvelocity.propertiesで宣言し、それを指定することもできます。

<bean id="velocityEngine" class="org.springframework.ui.velocity.VelocityEngineFactoryBean">
  <property name="configLocation" value="/WEB-INF/velocity.properties"/>
</bean>
22
Raghuram

これを試して:

<bean id="velocityEngine" class="org.springframework.ui.velocity.VelocityEngineFactoryBean">
    <property name="resourceLoaderPath" value="/email_templates/"/>
</bean>

<bean name="mailTest" class="com.crisil.web.MailTestController">
    <property name="velocityEngine" ref="velocityEngine"/>
</bean>
17

リソースローダーを次のように試してください

org.Apache.velocity.runtime.resource.loader.FileResourceLoader

お役に立てれば。

0
blob