在将 Spring-MVC 应用程序部署到 Tomcat 服务器时,我遇到了一个问题:服务器一直使用 application/x-octet-stream
作为响应类型。因此,浏览器不会显示页面,而是提供下载页面。
该网站在本地 Tomcat 服务器上按预期运行 - 也许该服务器具有不同的默认设置?
URL 类似于以下: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
以便它在所有服务器上工作而无需额外配置?
最佳答案
尝试调用 VelocityLayoutViewResolver.setContentType配置您的 viewResolver
bean 时:
<beans:property name="contentType" value="text/html" />
关于java - 部署服务器使用 "application/x-octet-stream",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18376635/