You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@myfaces.apache.org by Guy Bashan <gu...@gmail.com> on 2008/08/05 13:50:36 UTC
[MyFaces]
Hi,
I am trying to use <t:savestate>. I am trying to save the sate of a list
which is a member of a backing bean, that is needed to be manipulated (move
rows up and down, delete, etc').
The list will be "really" saved when "save" is pressed.
I am getting this exception:
javax.faces.FacesException: Exception while restoring state of component
javax.faces.FacesException: Exception while restoring state of component :
{Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId:
null][Class: javax.faces.component.html.HtmlForm,Id:
frmTargetingParam][Class: javax.faces.component.html.HtmlPanelGroup,Id:
j_id_jsp_1379417937_106][Class:
org.apache.myfaces.custom.savestate.UISaveState,Id:
j_id_jsp_1379417937_108]}
at
javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.ja
va:834)
at
javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.ja
va:822)
at
javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.ja
va:822)
at
javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.ja
va:822)
at
org.apache.myfaces.application.jsp.JspStateManagerImpl.restoreView(JspStateM
anagerImpl.java:316)
at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.restoreView(JspViewHan
dlerImpl.java:506)
at
org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor
.java:85)
at
org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:1
03)
at
org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)
at
org.apache.myfaces.custom.ppr.PPRLifecycleWrapper.execute(PPRLifecycleWrappe
r.java:68)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:148)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:206)
at
com.todacell.ui.view.filter.OpenSessionInViewFilter.doFilterInternal(OpenSes
sionInViewFilter.java:136)
at
com.todacell.ui.view.filter.OncePerRequestFilter.doFilter(OncePerRequestFilt
er.java:61)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:206)
at
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.
java:147)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
va:175)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128
)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102
)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http
11Protocol.java:583)
at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Caused by: javax.faces.el.PropertyNotFoundException:
javax.el.PropertyNotFoundException: Property 'pubListTargetingParamOptions'
not writable on type java.util.List
at
org.apache.myfaces.el.convert.ValueExpressionToValueBinding.setValue(ValueEx
pressionToValueBinding.java:128)
at
org.apache.myfaces.custom.savestate.UISaveState.restoreState(UISaveState.jav
a:101)
at
javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.ja
va:832)
... 29 more
Caused by: javax.el.PropertyNotFoundException: Property
'pubListTargetingParamOptions' not writable on type java.util.List
at
javax.el.BeanELResolver$BeanProperty.write(BeanELResolver.java:247)
at
javax.el.BeanELResolver$BeanProperty.access$100(BeanELResolver.java:209)
at javax.el.BeanELResolver.setValue(BeanELResolver.java:106)
at
javax.el.CompositeELResolver.setValue(CompositeELResolver.java:68)
at
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.access$501(F
acesCompositeELResolver.java:46)
at
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver$6.invoke(Fac
esCompositeELResolver.java:132)
at
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.invoke(Faces
CompositeELResolver.java:148)
at
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.setValue(Fac
esCompositeELResolver.java:128)
at org.apache.el.parser.AstValue.setValue(AstValue.java:132)
at
org.apache.el.ValueExpressionImpl.setValue(ValueExpressionImpl.java:249)
at
org.apache.myfaces.el.convert.ValueExpressionToValueBinding.setValue(ValueEx
pressionToValueBinding.java:124)
... 31 more
When I remove the <t:savestate> things are working, but of course list is
being reloaded on each post.
Does anyone know what am I doing wrong here?
Thanks,
Guy.
RE: [MyFaces]
Posted by Guy Bashan <gu...@gmail.com>.
The el was:
<t:saveState value="#{myBean.myList}" />
Anyway, I gave up and solved it by using a session scoped bean holding the
list.
Thanks,
Guy.
-----Original Message-----
From: simon.kitching@chello.at [mailto:simon.kitching@chello.at]
Sent: Tuesday, August 05, 2008 3:57 PM
To: MyFaces Discussion
Subject: Re: [MyFaces] <t:savestate>
Guy Bashan schrieb:
>
> Hi,
>
>
>
> I am trying to use <t:savestate>. I am trying to save the sate of a
> list which is a member of a backing bean, that is needed to be
> manipulated (move rows up and down, delete, etc').
>
> The list will be "really" saved when "save" is pressed.
>
>
>
> I am getting this exception:
>
> javax.faces.FacesException: Exception while restoring state of component
>
> |javax.faces.FacesException: Exception while restoring state of component
: {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId:
null][Class: javax.faces.component.html.HtmlForm,Id:
frmTargetingParam][Class: javax.faces.component.html.HtmlPanelGroup,Id:
j_id_jsp_1379417937_106][Class:
org.apache.myfaces.custom.savestate.UISaveState,Id:
j_id_jsp_1379417937_108]}|
> | at
javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.ja
va:834)|
> | at
javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.ja
va:822)|
> | at
javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.ja
va:822)|
> | at
javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.ja
va:822)|
> | at
org.apache.myfaces.application.jsp.JspStateManagerImpl.restoreView(JspStateM
anagerImpl.java:316)|
> | at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.restoreView(JspViewHan
dlerImpl.java:506)|
> | at
org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor
.java:85)|
> | at
org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:1
03)|
> | at
org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)|
> | at
org.apache.myfaces.custom.ppr.PPRLifecycleWrapper.execute(PPRLifecycleWrappe
r.java:68)|
> | at
javax.faces.webapp.FacesServlet.service(FacesServlet.java:148)|
> | at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:290)|
> | at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:206)|
> | at
com.todacell.ui.view.filter.OpenSessionInViewFilter.doFilterInternal(OpenSes
sionInViewFilter.java:136)|
> | at
com.todacell.ui.view.filter.OncePerRequestFilter.doFilter(OncePerRequestFilt
er.java:61)|
> | at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:235)|
> | at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:206)|
> | at
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.
java:147)|
> | at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:235)|
> | at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:206)|
> | at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:233)|
> | at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
va:175)|
> | at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128
)|
> | at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102
)|
> | at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
:109)|
> | at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)|
> | at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)|
> | at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http
11Protocol.java:583)|
> | at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)|
> | at java.lang.Thread.run(Thread.java:619)|
> |Caused by: javax.faces.el.PropertyNotFoundException:
javax.el.PropertyNotFoundException: Property 'pubListTargetingParamOptions'
not writable on type java.util.List|
> | at
org.apache.myfaces.el.convert.ValueExpressionToValueBinding.setValue(ValueEx
pressionToValueBinding.java:128)|
> | at
org.apache.myfaces.custom.savestate.UISaveState.restoreState(UISaveState.jav
a:101)|
> | at
javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.ja
va:832)|
> | ... 29 more|
> |Caused by: javax.el.PropertyNotFoundException: Property
'pubListTargetingParamOptions' not writable on type java.util.List|
> | at
javax.el.BeanELResolver$BeanProperty.write(BeanELResolver.java:247)|
> | at
javax.el.BeanELResolver$BeanProperty.access$100(BeanELResolver.java:209)|
> | at javax.el.BeanELResolver.setValue(BeanELResolver.java:106)|
> | at
javax.el.CompositeELResolver.setValue(CompositeELResolver.java:68)|
> | at
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.access$501(F
acesCompositeELResolver.java:46)|
> | at
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver$6.invoke(Fac
esCompositeELResolver.java:132)|
> | at
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.invoke(Faces
CompositeELResolver.java:148)|
> | at
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.setValue(Fac
esCompositeELResolver.java:128)|
> | at org.apache.el.parser.AstValue.setValue(AstValue.java:132)|
> | at
org.apache.el.ValueExpressionImpl.setValue(ValueExpressionImpl.java:249)|
> | at
org.apache.myfaces.el.convert.ValueExpressionToValueBinding.setValue(ValueEx
pressionToValueBinding.java:124)|
> | ... 31 more|
>
>
>
> When I remove the <t:savestate> things are working, but of course list
> is being reloaded on each post.
>
>
>
> Does anyone know what am I doing wrong here?
>
Looks like you have got your EL expression for the t:saveState tag
wrong, and as a result something is doing
#{foo.pubListTargetingParamOptions}
where #{foo} is an object of type List.
Regards, Simon
Re: [MyFaces]
Posted by "simon.kitching@chello.at" <si...@chello.at>.
Guy Bashan schrieb:
>
> Hi,
>
>
>
> I am trying to use <t:savestate>. I am trying to save the sate of a
> list which is a member of a backing bean, that is needed to be
> manipulated (move rows up and down, delete, etc').
>
> The list will be "really" saved when "save" is pressed.
>
>
>
> I am getting this exception:
>
> javax.faces.FacesException: Exception while restoring state of component
>
> |javax.faces.FacesException: Exception while restoring state of component : {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: null][Class: javax.faces.component.html.HtmlForm,Id: frmTargetingParam][Class: javax.faces.component.html.HtmlPanelGroup,Id: j_id_jsp_1379417937_106][Class: org.apache.myfaces.custom.savestate.UISaveState,Id: j_id_jsp_1379417937_108]}|
> | at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:834)|
> | at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:822)|
> | at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:822)|
> | at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:822)|
> | at org.apache.myfaces.application.jsp.JspStateManagerImpl.restoreView(JspStateManagerImpl.java:316)|
> | at org.apache.myfaces.application.jsp.JspViewHandlerImpl.restoreView(JspViewHandlerImpl.java:506)|
> | at org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:85)|
> | at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103)|
> | at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)|
> | at org.apache.myfaces.custom.ppr.PPRLifecycleWrapper.execute(PPRLifecycleWrapper.java:68)|
> | at javax.faces.webapp.FacesServlet.service(FacesServlet.java:148)|
> | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)|
> | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)|
> | at com.todacell.ui.view.filter.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:136)|
> | at com.todacell.ui.view.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:61)|
> | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)|
> | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)|
> | at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)|
> | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)|
> | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)|
> | at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)|
> | at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)|
> | at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)|
> | at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)|
> | at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)|
> | at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)|
> | at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)|
> | at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)|
> | at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)|
> | at java.lang.Thread.run(Thread.java:619)|
> |Caused by: javax.faces.el.PropertyNotFoundException: javax.el.PropertyNotFoundException: Property 'pubListTargetingParamOptions' not writable on type java.util.List|
> | at org.apache.myfaces.el.convert.ValueExpressionToValueBinding.setValue(ValueExpressionToValueBinding.java:128)|
> | at org.apache.myfaces.custom.savestate.UISaveState.restoreState(UISaveState.java:101)|
> | at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:832)|
> | ... 29 more|
> |Caused by: javax.el.PropertyNotFoundException: Property 'pubListTargetingParamOptions' not writable on type java.util.List|
> | at javax.el.BeanELResolver$BeanProperty.write(BeanELResolver.java:247)|
> | at javax.el.BeanELResolver$BeanProperty.access$100(BeanELResolver.java:209)|
> | at javax.el.BeanELResolver.setValue(BeanELResolver.java:106)|
> | at javax.el.CompositeELResolver.setValue(CompositeELResolver.java:68)|
> | at org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.access$501(FacesCompositeELResolver.java:46)|
> | at org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver$6.invoke(FacesCompositeELResolver.java:132)|
> | at org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.invoke(FacesCompositeELResolver.java:148)|
> | at org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.setValue(FacesCompositeELResolver.java:128)|
> | at org.apache.el.parser.AstValue.setValue(AstValue.java:132)|
> | at org.apache.el.ValueExpressionImpl.setValue(ValueExpressionImpl.java:249)|
> | at org.apache.myfaces.el.convert.ValueExpressionToValueBinding.setValue(ValueExpressionToValueBinding.java:124)|
> | ... 31 more|
>
>
>
> When I remove the <t:savestate> things are working, but of course list
> is being reloaded on each post.
>
>
>
> Does anyone know what am I doing wrong here?
>
Looks like you have got your EL expression for the t:saveState tag
wrong, and as a result something is doing
#{foo.pubListTargetingParamOptions}
where #{foo} is an object of type List.
Regards, Simon