MyFaces Orchestra
  1. MyFaces Orchestra
  2. ORCHESTRA-52

ConversationManager.getInstance throws ClassCastException comparing DUMMY object

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.4
    • Fix Version/s: 1.5
    • Component/s: Conversation
    • Labels:
      None
    • Environment:
      tomcat 6.0.16

      Description

      Doing some tests I saw this exception:

      java.lang.ClassCastException: java.lang.Integer cannot be cast to org.apache.myfaces.orchestra.conversation.ConversationManager
      org.apache.myfaces.orchestra.conversation.ConversationManager.getInstance(ConversationManager.java:137)
      org.apache.myfaces.orchestra.lib.jsf.ContextLockRequestHandler.init(ContextLockRequestHandler.java:68)
      org.apache.myfaces.orchestra.lib.jsf.OrchestraFacesContextFactory$1.<init>(OrchestraFacesContextFactory.java:122)
      org.apache.myfaces.orchestra.lib.jsf.OrchestraFacesContextFactory.getFacesContext(OrchestraFacesContextFactory.java:103)
      org.apache.myfaces.orchestra.requestParameterProvider.jsf.RequestParameterFacesContextFactory.getFacesContext(RequestParameterFacesContextFactory.java:93)
      org.apache.myfaces.webapp.filter.TomahawkFacesContextFactory.getFacesContext(TomahawkFacesContextFactory.java:107)
      com.sun.faces.context.InjectionFacesContextFactory.getFacesContext(InjectionFacesContextFactory.java:117)
      javax.faces.webapp.FacesServlet.service(FacesServlet.java:298)
      org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:169)
      org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:392)

      The line that causes this error is this:

      if (cmObj == DUMMY)

      It seems to be a workaround for Tomcat 6.0.16 at least, but by some unknown reason, after some time this comparator stop working. This is a similar issue as the one we had with FacesCompositeELResolver.SCOPE.

      Note reproduce this one is difficult, but fortunately the solution is simple:

      if (DUMMY.equals(cmObj))

        Issue Links

          Activity

          There are no comments yet on this issue.

            People

            • Assignee:
              Leonardo Uribe
              Reporter:
              Leonardo Uribe
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development