You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Martin Zdila (JIRA)" <my...@incubator.apache.org> on 2005/05/26 11:03:53 UTC
[jira] Created: (MYFACES-256) aliasBean saves its children when parent has rendered="false"
aliasBean saves its children when parent has rendered="false"
-------------------------------------------------------------
Key: MYFACES-256
URL: http://issues.apache.org/jira/browse/MYFACES-256
Project: MyFaces
Type: Bug
Versions: 1.0.9 beta
Reporter: Martin Zdila
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
[jira] Updated: (TOMAHAWK-377) aliasBean saves its children when
parent has rendered="false"
Posted by "Martin Marinschek (JIRA)" <de...@myfaces.apache.org>.
[ http://issues.apache.org/jira/browse/TOMAHAWK-377?page=all ]
Martin Marinschek updated TOMAHAWK-377:
---------------------------------------
Status: Open (was: Patch Available)
> aliasBean saves its children when parent has rendered="false"
> -------------------------------------------------------------
>
> Key: TOMAHAWK-377
> URL: http://issues.apache.org/jira/browse/TOMAHAWK-377
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Alias Bean
> Affects Versions: 1.0.9m9
> Reporter: Martin Zdila
> Assigned To: 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
[jira] Updated: (MYFACES-256) aliasBean saves its children when
parent has rendered="false"
Posted by "Anonymous (JIRA)" <de...@myfaces.apache.org>.
[ 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