部署服务器使用“application / x-octet-stream”

时间:2013-08-22 09:32:12

标签: java tomcat spring-mvc mime-types velocity

在将Spring-MVC应用程序部署到Tomcat服务器时,我遇到了一个问题:服务器继续使用application/x-octet-stream作为响应类型。因此,浏览器不显示页面,而是提供下载页面。

该网站在本地Tomcat服务器上按预期工作 - 可能是一个具有不同的默认设置?

网址类似于以下网址:http://www.example.org/mysite/search

我的web.xml(部分):

<servlet>
    <servlet-name>appServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>appServlet</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>

和servlet-context.xml:

<beans:bean id="viewResolver"
    class="org.springframework.web.servlet.view.velocity.VelocityLayoutViewResolver">
    <beans:property name="cache" value="true" />
    <beans:property name="prefix" value="" />
    <beans:property name="suffix" value=".vm" />
</beans:bean>
<beans:bean id="velocityConfig"
    class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
    <beans:property name="resourceLoaderPath" value="/WEB-INF/views/" />
</beans:bean>
<context:component-scan base-package="org.example.website" />

如何在项目中将默认MIME类型更改为text/html,以便它可以在没有其他配置的情况下在所有服务器上运行?

1 个答案:

答案 0 :(得分:1)

配置viewResolver bean时尝试调用VelocityLayoutViewResolver.setContentType

    <beans:property name="contentType" value="text/html" />