You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "David Jencks (JIRA)" <de...@myfaces.apache.org> on 2007/03/11 21:57:09 UTC

[jira] Created: (MYFACES-1557) MyfacesConfig.getCurrentInstance not thread safe

MyfacesConfig.getCurrentInstance not thread safe
------------------------------------------------

                 Key: MYFACES-1557
                 URL: https://issues.apache.org/jira/browse/MYFACES-1557
             Project: MyFaces Core
          Issue Type: Bug
          Components: General
    Affects Versions: 1.2.0-SNAPSHOT
            Reporter: David Jencks
             Fix For: 1.2.0-SNAPSHOT


If getCurrentInstance decides to create a new  MyFacesConfig, it sets it before filling in the values.  This is obviously not thread safe.

With the current MyFaces implementations getting/setting the config is eventually done on the ServletContext obtained from the web container.  AFAICT the servlet spec doesn't say anything about whether access to ServletContext attributes is synchronized, but the jetty6 implementation does synchronize the get/set methods.  If this is generally understood to be a requirement, the getCurrentInstance method can be made thread safe by setting the new instance to after it is all filled in rather than before.  Otherwise additional synchronization would be needed.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.