[
http://jira.jboss.com/jira/browse/JBSEAM-2794?page=all ]
Michael Youngstrom updated JBSEAM-2794:
---------------------------------------
Attachment: el.patch
Here is a candidate patch. I believe I retain all backwards compatibility and add the
functionality of:
1. Unified Seam EL and JSF EL Resolvers. Add a resolver to Seam and it will be added to
both.
2. The ability to order ELResolvers with in Seam.
3. The ability to dynamically add new ELResolvers to help support Component level
integration work (i.e. now Spring users don't need to add a SpringELResolver to the
faces context.
This patch also lays the groundwork for making all of the EL static methods more dynamic
and overidable like the services of any standard Seam Component.
If the user wishes to add initialELResolvers to the component they can do so in
components.xml. I did not create a xsd for the component since there currently is not an
xsd for EL and this is kind of low level functionality anyway.
Anyone object to any of this? Anyone have a problem with me committing this for
2.1.beta1?
Make Seam EL more extensible and unified
----------------------------------------
Key: JBSEAM-2794
URL:
http://jira.jboss.com/jira/browse/JBSEAM-2794
Project: JBoss Seam
Issue Type: Feature Request
Components: Core
Affects Versions: 2.1.0.A1
Reporter: Michael Youngstrom
Assigned To: Michael Youngstrom
Fix For: 2.1.0.BETA2
Attachments: el.patch
I'm currently having some trouble dealing with ELResolvers in Seam and JSF.
1. It is not very easy to add ELResolvers to Seam (e.g. SpringELResolver must be put in
the end of the resolver chain when it should be one of the first.)
2. When executing outside a FacesRequest you have to use the Seam ELResolver
infrastructure which doesn't see any of the JSF ELResolvers
3. It would be nice to have a little more control over the order of ELResolvers since I
have run into a few recursive situations as EL can sometimes sneak it's way into
situations where EL is used in the SeamELResolver to resolve EL.
I believe that all of the above can be solved by:
1. Turn the SeamELResolver into a CompositeELResolver where a Seam Component can manage
the included ELResolvers.
2. Add the above single SeamCompositeELResolver to the faces-context.xml. Making it so
custom ELResolvers can be managed in a single place in Seam for both Faces and non Faces
requests.
--
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