DocumentRenderer.encodeAll must not assume root StateManager is Trinidad's
--------------------------------------------------------------------------

                 Key: TRINIDAD-2105
                 URL: https://issues.apache.org/jira/browse/TRINIDAD-2105
             Project: MyFaces Trinidad
          Issue Type: Bug
          Components: Portlet
    Affects Versions: 2.0.0
            Reporter: Michael Freedman


DocumentRenderer.encodeAll has the following code:

    StateManager sm = context.getApplication().getStateManager();

    if (sm instanceof StateManagerImpl)
    {
      // do real work
    }
    else
    {
    // log error and return
    }

This means Trinidad fails in an environment in which its wrapped -- such as the 
Portlet Bridge -- even though its StateManager is in use.  Instead the code 
should test for whether its StateManagerImpl and if not recursively test to see 
if its a StateManagerWrapper.  For each wrapper it finds it calls .getWrapped 
and runs the test again.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to