Java SpringMVC为XHTML定义内容类型

Java SpringMVC为XHTML定义内容类型,java,internet-explorer,spring-mvc,xhtml,content-type,Java,Internet Explorer,Spring Mvc,Xhtml,Content Type,我有一个带有jsp页面的SpringMVC应用程序,在IE8中显示XHTML页面时遇到了一个问题。Chrome和Firefox工作正常,但IE只是打开一个普通的xml文件。 我猜原因是响应头“Content Type”被设置为“text/xml”,但IE希望它是“application/xhtml+xml”。我试图更改它,但没有任何效果,内容类型仍然是“text/xml” 下面是一个简单的例子: mvc-dispatcher-servlet.xml HelloWorldPage.jsp Sp

我有一个带有jsp页面的SpringMVC应用程序,在IE8中显示XHTML页面时遇到了一个问题。Chrome和Firefox工作正常,但IE只是打开一个普通的xml文件。
我猜原因是响应头“Content Type”被设置为“text/xml”,但IE希望它是“application/xhtml+xml”。我试图更改它,但没有任何效果,内容类型仍然是“text/xml”

下面是一个简单的例子:
mvc-dispatcher-servlet.xml

HelloWorldPage.jsp


Spring MVC Hello World示例
${msg}
我试图将
添加到viewResolver,但没有帮助。尝试
response.setContentType(“应用程序/xhtml+xml”)时相同在控制器中

请问,有人有没有解决方案,如何更改内容类型?

您是否尝试添加DOCTYPE?@Salem,刚刚尝试过,我在html标记之前添加了
,但它没有解决我的问题。而且,现在我时不时地得到
JasperException:Scanner State 24 not Recognized
,我真的不明白,为什么有时候我按F5时会出现它
<bean id="viewResolver"
    class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix">
        <value>/WEB-INF/pages/</value>
    </property>
    <property name="suffix">
        <value>.jsp</value>
    </property>
</bean>

<bean name="/welcome.htm" 
    class="mypackage.HelloWorldController" />
public class HelloWorldController extends AbstractController {

@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request,
        HttpServletResponse response) throws Exception {

    ModelAndView model = new ModelAndView("HelloWorldPage");
    model.addObject("msg", "hello world");

    return model;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page"
    xmlns:c="http://java.sun.com/jsp/jstl/core"
    version="2.0">
<html xmlns="http://www.w3.org/1999/xhtml">
  <body>
<h1>Spring MVC Hello World Example</h1>
<h2>${msg}</h2>
  </body>
</html>
</jsp:root>