Hi,
I get an exception while using an aliasBean in the restoreView phase. A normal
phase looks like this:
DEBUG http-8080-Processor23 org.apache.myfaces.lifecycle.LifecycleImpl -
entering restoreView in org.apache.myfaces.lifecycle.LifecycleImpl
DEBUG http-8080-Processor23
org.apache.myfaces.application.jsp.JspStateManagerImpl - Tree structure
restored from server session
DEBUG http-8080-Processor23 org.apache.myfaces.custom.aliasbean.AliasBean -
restoreState
DEBUG http-8080-Processor23 org.apache.myfaces.el.VariableResolverImpl -
Variable 'userManagementServiceTarget' could not be resolved.
DEBUG http-8080-Processor23 org.apache.myfaces.custom.aliasbean.Alias -
makeAlias: #{administratorBean} = #{holder}
DEBUG http-8080-Processor23 org.apache.myfaces.custom.aliasbean.Alias -
removeAlias: #{administratorBean} != #{holder}
DEBUG http-8080-Processor23 org.apache.myfaces.lifecycle.LifecycleImpl -
exiting restoreView in org.apache.myfaces.lifecycle.LifecycleImpl
But in some cases (mostly when returning to the same page again) I get the
following exception:
DEBUG http-8080-Processor23 org.apache.myfaces.lifecycle.LifecycleImpl -
entering restoreView in org.apache.myfaces.lifecycle.LifecycleImpl
DEBUG http-8080-Processor23
org.apache.myfaces.application.jsp.JspStateManagerImpl - Tree structure
restored from server session
DEBUG http-8080-Processor23 org.apache.myfaces.custom.aliasbean.AliasBean -
restoreState
DEBUG http-8080-Processor23 org.apache.myfaces.el.VariableResolverImpl -
Variable 'userManagementServiceTarget' could not be resolved.
DEBUG http-8080-Processor23 org.apache.myfaces.custom.aliasbean.Alias -
makeAlias: #{administratorBean} = #{holder}
DEBUG http-8080-Processor23 org.apache.myfaces.custom.aliasbean.Alias -
removeAlias: #{administratorBean} != #{holder}
DEBUG http-8080-Processor23 org.apache.myfaces.el.VariableResolverImpl -
Variable 'holder' could not be resolved.
DEBUG http-8080-Processor23 org.apache.myfaces.el.VariableResolverImpl -
Variable 'holder' could not be resolved.
ERROR http-8080-Processor23 StandardWrapper[/Lerntagebuch:Faces Servlet] -
Servlet.service() for servlet Faces Servlet threw exception
javax.faces.el.PropertyNotFoundException: Base is null: holder
at
org.apache.myfaces.el.ValueBindingImpl.resolveToBaseAndProperty(ValueBindingImpl.java:457)
at
org.apache.myfaces.el.ValueBindingImpl.setValue(ValueBindingImpl.java:242)
at
org.apache.myfaces.lifecycle.LifecycleImpl.recursivelyHandleComponentReferencesAndSetValid(LifecycleImpl.java:396)
at
org.apache.myfaces.lifecycle.LifecycleImpl.recursivelyHandleComponentReferencesAndSetValid(LifecycleImpl.java:404)
at
org.apache.myfaces.lifecycle.LifecycleImpl.recursivelyHandleComponentReferencesAndSetValid(LifecycleImpl.java:404)
at
org.apache.myfaces.lifecycle.LifecycleImpl.recursivelyHandleComponentReferencesAndSetValid(LifecycleImpl.java:404)
at
org.apache.myfaces.lifecycle.LifecycleImpl.restoreView(LifecycleImpl.java:157)
at
org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:66)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:94)
It looks to me as if someone is accessing the holder bean outside the aliasBean
scope. How can I get hands on the culprit? In my jsf pages, I am just accessing
the holder bean inside the aliasBean tags.
TIA,
Stefan