[prev in list] [next in list] [prev in thread] [next in thread] 

List:       myfaces-dev
Subject:    [jira] Updated: (MYFACES-256) aliasBean saves its children when
From:       "Anonymous (JIRA)" <dev () myfaces ! apache ! org>
Date:       2006-02-28 10:57:05
Message-ID: 1574704756.1141124225721.JavaMail.jira () ajax ! apache ! org
[Download RAW message or body]

     [ http://issues.apache.org/jira/browse/MYFACES-256?page=all ]

 updated MYFACES-256:
---------------------


> aliasBean saves its children when parent has rendered="false"
> -------------------------------------------------------------
> 
> Key: MYFACES-256
> URL: http://issues.apache.org/jira/browse/MYFACES-256
> Project: MyFaces Core
> Type: Bug
> Versions: 1.0.9m9
> Reporter: Martin Zdila
> Assignee: Sylvain Vieujot

> 
> Hello
> <h:panelGroup rendered="#{tableColumnForm.inputTypeName == 'label'}">
> 	<x:aliasBean alias="#{holder}" \
> value="#{tableColumnForm.inputType.visualDefinition}">  <f:subview \
> id="inputTypeLabelVisualDefinition">  <jsp:include page="/inc/fontPicker.jsp" />
> 		</f:subview>
> 	</x:aliasBean>
> </h:panelGroup>
> This JSF code causes exception although #{tableColumnForm.inputTypeName == 'label'} \
>                 (rendered) is false:
> javax.faces.el.PropertyNotFoundException: Bean: \
> com.kovine.kfe.dao.InputTypeCheckbox, property: visualDefinition  at \
> org.apache.myfaces.el.PropertyResolverImpl.getPropertyDescriptor(PropertyResolverImpl.java:464)
>   at org.apache.myfaces.el.PropertyResolverImpl.getPropertyDescriptor(PropertyResolverImpl.java:435)
>   at org.apache.myfaces.el.PropertyResolverImpl.getProperty(PropertyResolverImpl.java:398)
>   at org.apache.myfaces.el.PropertyResolverImpl.getValue(PropertyResolverImpl.java:104)
>   at org.apache.myfaces.el.ELParserHelper$MyPropertySuffix.evaluate(ELParserHelper.java:555)
>   at org.apache.commons.el.ComplexValue.evaluate(ComplexValue.java:145)
> 	at org.apache.myfaces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:441)
> 	at org.apache.myfaces.custom.aliasbean.AliasBean.makeAlias(AliasBean.java:270)
> 	at org.apache.myfaces.custom.aliasbean.AliasBean.makeAlias(AliasBean.java:249)
> 	at org.apache.myfaces.custom.aliasbean.AliasBean.processSaveState(AliasBean.java:145)
>   at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:466)
>   at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:466)
>   at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:466)
>   at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:466)
>   at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:454)
>   at javax.faces.component.UIComponentBase.processSaveState(UIComponentBase.java:466)
>   at org.apache.myfaces.application.jsp.JspStateManagerImpl.getComponentStateToSave(JspStateManagerImpl.java:106)
>   at org.apache.myfaces.application.jsp.JspStateManagerImpl.saveSerializedView(JspStateManagerImpl.java:249)
>   at org.apache.myfaces.taglib.core.ViewTag.doEndTag(ViewTag.java:141)
> 	at org.apache.jsp.pages.tableColumnForm_jsp._jspx_meth_f_view_0(tableColumnForm_jsp.java:341)
>  nForm_jsp.java:341)
> The expression #{tableColumnForm.inputType.visualDefinition} should be evaluated \
> only if inputType is of type "label" (then #{tableColumnForm.inputTypeName == \
> 'label'}). AliasBean tries to save state of all its children without regard if they \
> are (was) rendered or not. In my case, if #{tableColumnForm.inputTypeName == \
> 'label'} is false, then #{tableColumnForm.inputType} doesn't contain \
> "visualDefinition" property (because it contains reference to another object in \
> that moment) and that causes an exception. If I replace x:aliasBean tag to eg. \
> <h:outputText value="#{tableColumnForm.inputType.visualDefinition.fontFace}" /> \
> then it doesn't throw the exception although #{tableColumnForm.inputType} doesn't \
> contain "visualDefinition" property. So, in short: aliasBean should not save state \
> of its children when its parent is not rednered (because its children could contain \
> references to for example not existing properties). I hope my explanation is enough \
> clear. If not, please notify me (in the comment). Thanks in advance for your effort
> Martin

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic