Spring Spring VelocityViewResolver可以处理多种内容类型吗?

时间:2011-09-07 14:47:30

标签: java spring spring-mvc velocity

我在REST Spring MVC应用程序中使用Spring的ContentNegotiatingViewResolverVelocityViewResolver,它将支持许多不同的响应类型。

我希望Velocity能够处理多种内容类型,但它似乎只支持1(默认文本/ html或通过contentType属性提供)。在下面的配置示例中,我希望Velocity支持html,csv和自定义内容类型。

使用1个VelocityViewResolver可以实现吗?或者我是否需要为每种内容类型配置一个?

<bean id="viewResolver" class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
    <property name="mediaTypes">
        <map>
            <entry key="xml" value="application/xml"/> <!-- MarshallingView -->
            <entry key="json" value="application/json"/> <!-- MappingJacksonJsonView -->

            <!-- Would like the 3 content types below handled by Velocity -->
            <entry key="html" value="text/html"/>
            <entry key="csv" value="application/csv"/>
            <entry key="custom" value="application/custom"/>
        </map>
    </property>
    <property name="viewResolvers">
        <list>
            <bean class="org.springframework.web.servlet.view.velocity.VelocityViewResolver">
                <property name="cache" value="false"/>
                <property name="prefix" value=""/>
                <property name="suffix" value=".vm"/>
            </bean>
        </list>
    </property>
</bean>

0 个答案:

没有答案