【发布时间】:2013-12-12 19:38:49
【问题描述】:
有什么方法可以了解java servlet 上的IE 文档模式。显然,我尝试使用“User-Agent”字符串获取浏览器信息,但我无法从中获取文档模式。
【问题讨论】:
-
我需要java代码端的文档模式。我不是要改变浏览器端的文档模式
标签: java internet-explorer internet-explorer-10
有什么方法可以了解java servlet 上的IE 文档模式。显然,我尝试使用“User-Agent”字符串获取浏览器信息,但我无法从中获取文档模式。
【问题讨论】:
标签: java internet-explorer internet-explorer-10
要获取IE的文档模式,请使用下面的Servlet类。
代码:
公共类 DocumentModeOfIE 扩展 HttpServlet {
private String documentMode;
public void init(ServletConfig config) throws ServletException {
}
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
PrintWriter out = resp.getWriter();
resp.setContentType("text/html");
documentMode = req.getHeader("X-UA-Compatible");
out.println(documentMode);
}
public void destroy() {
}
}
==============将IE文档模式设置为特定的标准模式(即IE 7 0r IE8)==============
代码:
使用过滤器....
过滤器类:
公共类 UserAgentCompatibleFilter 实现 javax.servlet.Filter {
private Logger log = Logger.getLogger("UserAgentCompatibleFilter");
private String compatibilityMode;
public void destroy() {
}
public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws ServletException, IOException {
if (compatibilityMode != null) {
HttpServletResponse res = (HttpServletResponse) resp;
res.addHeader("X-UA-Compatible", compatibilityMode);
}
chain.doFilter(req, resp);
}
public void init(FilterConfig config) throws ServletException {
compatibilityMode = config.getInitParameter("compatibilityMode");
if (compatibilityMode == null) {
log.warn("No CompatibilityMode set for UserAgentCompatibleFilter, thus disabling it");
}
}
}
web.xml:
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 版本="2.5">
<!-- filter component start -->
<filter>
<filter-name>UserAgentCompatibleFilter</filter-name>
<filter-class>com.standardandpoors.ata.web.UserAgentCompatibleFilter</filter-class>
<init-param>
<param-name>compatibilityMode</param-name>
<param-value>IE=8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>UserAgentCompatibleFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- filter component end -->
希望对你有最大的帮助......
【讨论】: