[
https://issues.apache.org/jira/browse/MYFACES-1579?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mathias Broekelmann updated MYFACES-1579:
-----------------------------------------
Resolution: Fixed
Fix Version/s: 1.2.0-SNAPSHOT
Status: Resolved (was: Patch Available)
Application.getVariableResolver should return a resolver which delegates to the
application el resolver. I fixed this and added a test for it. Thanks Paul!
> VariableResolver throws IllegalStateException because scope is unknown
> ----------------------------------------------------------------------
>
> Key: MYFACES-1579
> URL: https://issues.apache.org/jira/browse/MYFACES-1579
> Project: MyFaces Core
> Issue Type: Bug
> Components: JSR-252
> Affects Versions: 1.2.0-SNAPSHOT
> Reporter: Paul McMahan
> Assigned To: Mathias Broekelmann
> Fix For: 1.2.0-SNAPSHOT
>
> Attachments: MYFACES-1579.patch
>
>
> VariableResolverImpl tries to determine if it was invoked through the faces
> chain or jsp chain by looking for an attribute (Scope.getClassName()) in the
> RequestMap. However, that attribute is only set during the span of a call to
> FacesCompositeELResolver.getValue(). See FacesCompositeELResolver#invoke(),
> which calls setScope() and then unsetScope().
> Therefore the following code always throws IllegalStateException
> VariableResolver resolver = application.getVariableResolver();
> Object result = resolver.resolveVariable(facesContext, "param");
> because when VariableResolverImpl.resolveVariable() looks for the scope in
> the request map (which happens outside the getValue() call) its always null.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.