[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-2899) Wrong JSF EL context used in cross-deployment calle

Clint Popetz (JIRA) jira-events at lists.jboss.org
Tue Apr 15 10:33:55 EDT 2008


Wrong JSF EL context used in cross-deployment calle
---------------------------------------------------

                 Key: JBSEAM-2899
                 URL: http://jira.jboss.com/jira/browse/JBSEAM-2899
             Project: Seam
          Issue Type: Bug
    Affects Versions: 2.0.2.CR1
            Reporter: Clint Popetz
         Attachments: cross-call-el-context.patch

See the forum for an example.  If a seam deployment servicing a JSF request invokes an EJB in another seam deployment, EL resolution in the callee will use the caller's ELContext.

I patched this by having a threadlocal in Lifecycle called "inCall," setting that on beginCall(), clearing it on clearThreadLocals(), providing a static "isCall()" similar to isDestroying(), and having FacesExpressions use the non-JSF resolver if isCall() returns true. 

I'm not sure if that's the best approach (see the alternatives in the forum post) but it is the least invasive, and is more performant than forcing Expressions.instance() to look in all scopes so that we can override it by scope.



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the seam-issues mailing list