[ https://issues.apache.org/jira/browse/MYFACES-3150?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13223942#comment-13223942 ]
Leonardo Uribe commented on MYFACES-3150: ----------------------------------------- Unfortunately the patch will not work, because there is an association between the parent component and the facet name, and then a check for a facet name is used to decide if the component is added as a child or as a facet child. With a stack, that connection get lost and at the end the tree will not be built correctly. > [perf] buildView: review usage of "facelets.FACET_NAME" > ------------------------------------------------------- > > Key: MYFACES-3150 > URL: https://issues.apache.org/jira/browse/MYFACES-3150 > Project: MyFaces Core > Issue Type: Improvement > Components: General > Affects Versions: 2.1.0-SNAPSHOT > Environment: myfaces core trunk > Reporter: Martin Kočí > Assignee: Martin Kočí > Priority: Minor > Attachments: MYFACES-3150-v1.patch > > > Consider 1000 components in view without any f:facet. > During VDL.buildView Facelets call for each component > ComponentHandler.getFacetName(FaceletContext, UIComponent) and that creates 3 > calls of Map.get(): > 1) _ComponentAttributesMap.getPropertyDescriptor(String) > 2) _ComponentAttributesMap.getUnderlyingMap().get() > 3) UIComponent.getValueExpression(String) > 3000 "empty" invocations in buildView withnout match. > Suggestions: > * do not use Component.attribute for that marker (comes from FacetHandler) > * replace map.get calls with property for performance reasons > * use a stack or property on AbstractFaceletContext if possible -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira