0

Java サーブレットで IE ドキュメント モードを知る方法はありますか。「User-Agent」文字列を使用してブラウザ情報を取得しようとしたようですが、これからドキュメント モードを取得できません。

4

1 に答える 1

0

IE のドキュメント モードを取得するには、以下の Servlet クラスを使用します。

コード:

public class DocumentModeOfIE extends 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) に設定するには==============

コード :

フィルターを使用して....

フィルタ クラス:

public class 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" version="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 -->

これがあなたに最も役立つことを願っています......

于 2013-12-12T10:56:18.763 に答える