MyFaces Trinidad
  1. MyFaces Trinidad
  2. TRINIDAD-1059

Exception when accessing trinidad-demo from Konqueror

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: 1.2.7-core
    • Fix Version/s: 1.0.8-core, 1.2.8-core
    • Component/s: Archetype
    • Labels:
      None
    • Environment:
      Fedora 8, Konqueror 3.5.9

      Description

      When accessing trinidad demos from Konqueror, the following exception occurs:

      HTTP Status 500 - 
      type Exception report
      message 
      description The server encountered an internal error () that prevented it from fulfilling this request.
      exception 
      javax.servlet.ServletException: org.apache.jasper.JasperException
              javax.faces.webapp.FacesServlet.service(FacesServlet.java:154)
              org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._invokeDoFilter(TrinidadFilterImpl.java:250)
              org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:207)
              org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:161)
              org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
              org.apache.myfaces.trinidaddemo.webapp.RedirectFilter.doFilter(RedirectFilter.java:97)
      
      root cause 
      javax.faces.FacesException: org.apache.jasper.JasperException
              org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:429)
              org.apache.myfaces.trinidad.context.ExternalContextDecorator.dispatch(ExternalContextDecorator.java:43)
              org.apache.myfaces.trinidadinternal.context.FacesContextFactoryImpl$OverrideDispatch.dispatch(FacesContextFactoryImpl.java:260)
              org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:211)
              org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:182)
              org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
              org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132)
              javax.faces.webapp.FacesServlet.service(FacesServlet.java:140)
              org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._invokeDoFilter(TrinidadFilterImpl.java:250)
              org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:207)
              org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:161)
              org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
              org.apache.myfaces.trinidaddemo.webapp.RedirectFilter.doFilter(RedirectFilter.java:97)
      
      note The full stack trace of the root cause is available in the Apache Tomcat/5.5 logs.
      Apache Tomcat/5.5
      

      The browser identification sent is
      Mozilla/5.0 (compatible; Konqueror/3.5; Linux) KHTML/3.5.9 (like Gecko)

        Issue Links

          Activity

          Hide
          Alexey Stukalov added a comment -

          The provided patch fixes possible NPE in CoreRenderer convenience methods isDesktop()/isPDA()/isIE()/isGecko()

          Show
          Alexey Stukalov added a comment - The provided patch fixes possible NPE in CoreRenderer convenience methods isDesktop()/isPDA()/isIE()/isGecko()
          Hide
          Scott O'Bryan added a comment -

          I am applying this patch but while it will eliminate some NPE's which are not specified in the contract, it will not make Trinidad compatible with browsers other then Firefox and IE. We'll probably need new agents and skins to support other browsers.

          Show
          Scott O'Bryan added a comment - I am applying this patch but while it will eliminate some NPE's which are not specified in the contract, it will not make Trinidad compatible with browsers other then Firefox and IE. We'll probably need new agents and skins to support other browsers.
          Hide
          Scott O'Bryan added a comment -

          Thanks for the patch Alexey!

          Show
          Scott O'Bryan added a comment - Thanks for the patch Alexey!
          Hide
          Alexey Stukalov added a comment -

          I believe that 'loose behaviour' of trying to render view without throwing an agent-associated exception is in most cases better than the 'strict behaviour'.
          The latter suggests exact 'user agent' string matching and kind of agent/skin 'certification' suite.

          Anyway, isXXX() functions are not the place where agent compatibility-associated exceptions should be thrown.

          Show
          Alexey Stukalov added a comment - I believe that 'loose behaviour' of trying to render view without throwing an agent-associated exception is in most cases better than the 'strict behaviour'. The latter suggests exact 'user agent' string matching and kind of agent/skin 'certification' suite. Anyway, isXXX() functions are not the place where agent compatibility-associated exceptions should be thrown.
          Hide
          Scott O'Bryan added a comment -

          I agree, but the current system is not coded that way. At least I don't think so. In either case, the NPE's were clearly unintended and I'm always a fan of using the .equals on the constant instead of the parameter. It's cleaner and less error prone. I'm just saying to expect to address more issues when working with Konqueror and Safari.

          Show
          Scott O'Bryan added a comment - I agree, but the current system is not coded that way. At least I don't think so. In either case, the NPE's were clearly unintended and I'm always a fan of using the .equals on the constant instead of the parameter. It's cleaner and less error prone. I'm just saying to expect to address more issues when working with Konqueror and Safari.
          Hide
          Alexey Stukalov added a comment -

          1.x.9 version introduced new sources of exceptions raised by unsupported user agents

          Show
          Alexey Stukalov added a comment - 1.x.9 version introduced new sources of exceptions raised by unsupported user agents
          Hide
          Scott O'Bryan added a comment -

          I figured it would. Perhaps for now we should check for unsupported use agents and throw a known exception. Then when this is fixed we can remove the exception.

          Show
          Scott O'Bryan added a comment - I figured it would. Perhaps for now we should check for unsupported use agents and throw a known exception. Then when this is fixed we can remove the exception.
          Hide
          Felix Becker added a comment -

          is this bug fixed in a released version yet? i've got this problem with version 1.2.8 of trinidad.

          regards,

          felix

          Show
          Felix Becker added a comment - is this bug fixed in a released version yet? i've got this problem with version 1.2.8 of trinidad. regards, felix
          Hide
          Matthias Weßendorf added a comment -

          this should be fixed on 128, according to the svn check in.
          if not, please re-open this ticket

          Show
          Matthias Weßendorf added a comment - this should be fixed on 128, according to the svn check in. if not, please re-open this ticket
          Hide
          Alexey Stukalov added a comment -

          Felix, you can check if TRINIDAD-1109 is more specific to your problem. I recall this issue was really fixed before 1.2.8, but in 1.2.8 the agent logic changed and that resulted in new exceptions at another places.

          Show
          Alexey Stukalov added a comment - Felix, you can check if TRINIDAD-1109 is more specific to your problem. I recall this issue was really fixed before 1.2.8, but in 1.2.8 the agent logic changed and that resulted in new exceptions at another places.

            People

            • Assignee:
              Scott O'Bryan
              Reporter:
              Alexey Stukalov
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development