[
https://issues.apache.org/jira/browse/MYFACES-3157?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Leonardo Uribe resolved MYFACES-3157.
-------------------------------------
Resolution: Fixed
Fix Version/s: 2.1.2
2.0.8
Assignee: Martin Kočí
Thanks to Martin Koci for provide this patch
> Fix order of isRendered and pushComponentToEL invocations
> ---------------------------------------------------------
>
> Key: MYFACES-3157
> URL: https://issues.apache.org/jira/browse/MYFACES-3157
> Project: MyFaces Core
> Issue Type: Bug
> Environment: myfaces core trunk
> Reporter: Martin Kočí
> Assignee: Martin Kočí
> Fix For: 2.0.8, 2.1.2
>
> Attachments: myfaces-api-MYFACES-3157-v1.patch,
> myfaces-api-MYFACES-3157-v2.patch
>
>
> Current specification for lifecycles methods:
> 1) processDecodes
> 2) processValidators
> 3) processUpdates
> 4) encodeAll
> 4) encodeBegin
> explicitly says that:
> 1) If the rendered property of this UIComponent is false, skip further
> processing.
> 2) call pushComponentToEL
> But in that order of invocations it is impossible to achieve rendered like
> this:
> <h:outputText rendered="#{component.id eq 'outputTextId'}" id="outputTextId"
> />
> i.e. any rendered ValueEpression based on component itself. In Myfaces we
> should implement in in reverse order, because specified behaviour is buggy.
> Please see this mail thread:
> http://www.mail-archive.com/[email protected]/msg53300.html
> and
> http://java.net/jira/browse/JAVASERVERFACES_SPEC_PUBLIC-1002
> for details.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira