[PERF] enhance scanning for #{cc} expressions
---------------------------------------------

                 Key: MYFACES-2951
                 URL: https://issues.apache.org/jira/browse/MYFACES-2951
             Project: MyFaces Core
          Issue Type: Improvement
          Components: JSR-314
            Reporter: Leonardo Uribe
            Assignee: Leonardo Uribe


Reported by Martin Koci

MK>> a issue to consider in
MK>> org.apache.myfaces.view.facelets.tag.TagAttributeImpl:

MK>> Methods
MK>> TagAttributeImpl.getMethodExpression and
MK>> TagAttributeImpl.getValueExpression use
MK>> CompositeComponentELUtils.isCompositeComponentXYZ methods to detect if
MK>> current #{} contains cc expression. But consider following: if user
MK>> migrates from facelets 1.2 to 2.0, this new cc detection slows down
MK>> build view process. In one my test case VDL.buildView calls
MK>> CompositeComponentELUtils.isCompositeComponentXYZ approx 3000 times per
MK>> build view with no match. isCompositeComponentXYZ is not cheap method
MK>> because it uses Pattern.matches().

MK>> Are there possibilities to avoid this? For example is possible have some
MK>> kind of "isProcessingCompositeComponent" method and skip
MK>> Pattern.matches() if false? We are in VDL.buildView here and no
MK>> components are available yet, no use of methods like
MK>> UIComponent.isCompositeComponent(UIComponent) is possible.

See discussion on dev list:

[core] performance: TagAttributeImpl and composite component EL detection


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

Reply via email to