2 Replies Latest reply: Sep 10, 2013 3:41 PM by 4548902c-ffeb-4abe-94bd-a27f65bccfc7 RSS

    OHW not working in Internet Explorer 10


      I have a web application that uses OHW, and have noticed that it does not display properly using Internet Explorer 10. The help displays as a single plain html file, with no styling or frameset, and is practically unusable

      Until recently the hosted Demo found here: http://www.oracle.com/technetwork/topics/index-083946.html was exhibiting the same symptoms. This now appears to have been fixed.

      Is there an update planned for Oracle Help with this fix in? Alternatively is there a workaround I can use to get this working?


        • 1. Re: OHW not working in Internet Explorer 10

          It has been more than half a year since this issue was originally posted. But this render issue related with OHW on IE10 doesn't seem to have been fixed yet for Oracle. Plus the "Hosted Demo" on the OracleHelp project page has been stuck with "coming soon" forever.


          I deployed the latest demo "ohw-rcf-demo-thick.ear" (12.1.2) , help page still comes up with NO FRAME, NO CSS.


          I also try to force IE10 into IE8 compatibility mode by using servlet filter or phraseListene to add "X-UA-Compatible" header, or add this as meta-info to the main.jspx page. None of them works.


          This bug pretty much make OracleHelp unusable under IE10 env, although ADF framework has been certified for IE10 already.


          Has anyone been able to figure out how to solve this issue?



          • 2. Re: OHW not working in Internet Explorer 10

            After spending another day on digging out this issue. Here is the cause and solution to this IE10 issue:


            OHW11/12c doesn't work correctly with IE10 is due to the browser detection behavior in OHWFilter.

            This filter uses OHWURLHelper.getUserAgent() to check the current browser. If a browser is not support(?), for example: IE 10. It will switch the help content to basic simple HTML mode. That is why the help document is rendered with no frame, no css.


            To solve this issue, we can add a new servlet filter called "IE10CompatibilityFilter" in web.xml, which alters "user-agent" string in the request header, so as to trick OHW to treat IE10 as IE8.


            1. in web.xml file, add the following lines before OHWRCFRequestFilter entry:

              <!-- Browser Compatibility Filter (must before OHWRCFRequestFilter) -->







                <servlet-name>Faces Servlet</servlet-name>




            2.  below is the code for IE10CompatibilityOHWFilter class.


            public class IE10CompatibilityOHWFilter implements Filter {

            public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
               throws IOException, ServletException {

              String userAgentStr = OHWURLHelper.getUserAgent((HttpServletRequest) request); 
                    if (userAgentStr != null && (userAgentStr.contains("MSIE 9.0") || userAgentStr.contains("MSIE 10.0"))){
                     //Might not be required, but doesn't hurt either
                     ((HttpServletResponse)response).setHeader("X-UA-Compatible", "IE=EmulateIE8");
                     ServletRequest wrappedRequest = new WrapperRequest((HttpServletRequest)request);
                     chain.doFilter(wrappedRequest, response);
                    else {
                     chain.doFilter(request, response);

            public void destroy() {}


            public void init(FilterConfig arg0) throws ServletException {}

            private class WrapperRequest extends HttpServletRequestWrapper {
                 public WrapperRequest(HttpServletRequest request) {
                 public String getHeader(String name) {
                     //get the request object and cast it
                     HttpServletRequest request = (HttpServletRequest)getRequest();
                     if("user-agent".equalsIgnoreCase(name)) {
                         return "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0)";
                     return request.getHeader(name);


            Hope it helps!