Hi Simon,

  Thanks very much, I added this code to my web.xml

<context-param>             
<param-name>org.apache.myfaces.SERIALIZE_STATE_IN_SESSION</param-name>
<param-value>false</param-value>
</context-param>

   but still gives the same error.

   Just a thought, if it is a Serialization Error why does it not
gives an Exception when trying to serialize and only when trying
to de-serialize ?

Thanks again
tonio

On Thu, 2005-12-22 at 18:35, Simon Kitching wrote:
> Hi Tonio,
> 
> Hmm. Method restoreAttachedState is for recreating Validator and 
> Listener objects that were serialized along with their attached 
> UIComponent. I can't see any custom validators or listeners in your JSP 
> snippet below, though. Perhaps you have some somewhere else?
> 
> 
> In the 1.1.1 release of MyFaces, when server-side state saving was 
> enabled, no serialization of the view tree was done at all; the whole 
> tree was just put into the session unserialized. Of course when using 
> client-side state saving serialization *must* occur. And when clustering 
> or hot-deploy is enabled in the container, all objects in the session 
> need to be serializable.
> 
> In the SVN trunk code, serialization is always enabled unless
> SERIALIZE_STATE_IN_SESSION is set to false in the web.xml file. You 
> might like to try setting this option to false and seeing if this fixes 
> your problem. Of course if it does, that means that your code will *not* 
> work if you ever enable hot-deploy or clustering as your http session 
> info cannot be saved to disk or transferred to other servers.
> 
> Alternatively, try enabling client-side state saving in your Sun RI 
> environment and see whether your code breaks. I suspect it will.
> 
> I suspect that the Sun RI works like MyFaces 1.1.1, ie doesn't bother to 
> serialize the view state on the server. This means that the fact that 
> your code isn't correctly serializable isn't actually noticed.
> 
> Regards,
> 
> Simon
> 
> Tonio Caputo wrote:
> > Hi everybody,
> > 
> > First of all, thank you very much.
> > 
> > One thing to remember, this application is actually running
> > correctly with Sun reference implementation, I'm not using
> > any of MyFaces particularities.
> > 
> > 
> > Here goes the full stack trace, and some code snippets:
> > 
> > java "Pages" are managed-beans with managed-scope -> Request.
> > 
> > -------------------------------------------------------------------
> > ### - STACK TRACE
> > -------------------------------------------------------------------
> > 2005-12-22 12:59:52 StandardWrapperValve[Faces Servlet]:
> > Servlet.service() for servlet Faces Servlet threw exception
> > java.lang.RuntimeException: Could not restore StateHolder of type
> > com.avivacanada.pampa.util.jsf.BasePageBean$1 (missing no-args
> > constructor?)
> >     at
> > javax.faces.component.UIComponentBase.restoreAttachedState(UIComponentBase.java:655)
> >     at
> > javax.faces.component.UIComponentBase.restoreAttachedState(UIComponentBase.java:641)
> >     at
> > javax.faces.component.UIComponentBase.restoreState(UIComponentBase.java:696)
> >     at javax.faces.component.UICommand.restoreState(UICommand.java:188)
> >     at
> > javax.faces.component.html.HtmlCommandButton.restoreState(HtmlCommandButton.java:421)
> >     at
> > javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:511)
> >     at
> > javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:502)
> >     at
> > javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:502)
> >     at
> > org.apache.myfaces.application.jsp.JspStateManagerImpl.restoreComponentState(JspStateManagerImpl.java:129)
> >     at
> > org.apache.myfaces.application.jsp.JspStateManagerImpl.restoreView(JspStateManagerImpl.java:185)
> >     at
> > org.apache.myfaces.application.jsp.JspViewHandlerImpl.restoreView(JspViewHandlerImpl.java:255)
> >     at
> > org.apache.myfaces.lifecycle.LifecycleImpl.restoreView(LifecycleImpl.java:124)
> >     at
> > org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:66)
> >     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:106)
> >     at
> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
> >     at
> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
> >     at
> > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
> >     at
> > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
> >     at
> > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
> >     at
> > org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
> >     at
> > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
> >     at
> > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
> >     at
> > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
> >     at
> > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
> >     at
> > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
> >     at
> > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
> >     at
> > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
> >     at
> > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
> >     at
> > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> >     at
> > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
> >     at
> > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
> >     at
> > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> >     at
> > org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
> >     at
> > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
> >     at
> > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
> >     at
> > org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
> >     at
> > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
> >     at java.lang.Thread.run(Thread.java:534)
> > Caused by: java.lang.InstantiationException:
> > com.avivacanada.pampa.util.jsf.BasePageBean$1
> >     at java.lang.Class.newInstance0(Class.java:293)
> >     at java.lang.Class.newInstance(Class.java:261)
> >     at
> > javax.faces.component.UIComponentBase.restoreAttachedState(UIComponentBase.java:651)
> >     ... 37 more
> > 
> > 
> > -------------------------------------------------------------------
> > ### - JAVA CLASSES
> > -------------------------------------------------------------------
> > 
> > public class PageReferReason 
> >     extends  BasePageBean 
> > {
> >     // =================================================================
> >     // Components Definition
> >     // =================================================================
> > 
> >     private HtmlForm formMain = new HtmlForm();
> > 
> >     .............
> >     HtmlSelectOneMenu fCmbReferReason = new HtmlSelectOneMenu();
> >     PmpLabel fLblVerbose = new PmpLabel();
> >     HtmlInputTextarea fTaVerbose = new HtmlInputTextarea();
> >     ..........
> >     UISelectItems itmReferReason = new UISelectItems();
> >     
> >     public PageReferReason()
> >     {
> >       ........
> >     }
> >     
> >     // =================================================================
> >     // Getter and Setters
> >     // =================================================================
> > 
> >     // Combo/List items    
> >     public UISelectItems getItmReferReason() {
> >     return itmReferReason;
> >     }
> >     public void setItmReferReason(UISelectItems pList) {
> >     itmReferReason = pList;
> >     }
> > 
> > 
> >     // Page components
> >     public HtmlForm getForm() {
> >     return formMain;
> >     }
> >     public void setForm(HtmlForm pComp) {
> >     formMain = pComp;
> >     }
> > 
> >     public HtmlSelectOneMenu getReferReason() {
> >     return fCmbReferReason;
> >     }
> >     public void setReferReason(HtmlSelectOneMenu pComp) {
> >     fCmbReferReason = pComp;
> >     }
> > 
> >     public PmpLabel getLblVerbose() {
> >     return fLblVerbose;
> >     }
> >     public void setLblVerbose(PmpLabel pComp) {
> >     fLblVerbose = pComp;
> >     }
> > 
> >     public HtmlInputTextarea getVerbose() {
> >     return fTaVerbose;
> >     }
> >     public void setVerbose(HtmlInputTextarea pComp) {
> >     fTaVerbose = pComp;
> >     }
> > 
> >     .................
> > } 
> > 
> > 
> > public abstract class BasePageBean implements ItfControlledComp
> > {
> >   public BasePageBean() {
> > ...........
> >      toolsActions();
> >   }
> > 
> > ...........
> >   /** help option  ================================== */    
> >   private HtmlCommandButton _fbtnMainHelpBtn = new HtmlCommandButton();
> >   public HtmlCommandButton getMainHelpBtn()
> >   {
> >     return this._fbtnMainHelpBtn;
> >   }
> > 
> >   public void setMainHelpBtn(HtmlCommandButton pMainHelpBtn)
> >   {
> >     this._fbtnMainHelpBtn = pMainHelpBtn;
> >   }
> > 
> >   /** logout option  ================================== */    
> >   private HtmlCommandButton _fbtnMainLogoutBtn = 
> >                                     new HtmlCommandButton();  
> >   public HtmlCommandButton getMainLogoutBtn()
> >   {
> >     return this._fbtnMainLogoutBtn;
> >   }
> > 
> >   public void setMainLogoutBtn(HtmlCommandButton pMainLogoutBtn)
> >   {
> >     this._fbtnMainLogoutBtn = pMainLogoutBtn;
> >   }
> > 
> > ...............................
> > 
> >   public void toolsActions()
> >   {
> >     _fbtnMainLogoutBtn.addActionListener(new ActionListener()
> >     {
> >       public void processAction(ActionEvent e)
> >       {
> >       enqueueUG(new UserGesture(UserGesture.SIGN_OUT,this,null));
> >       }
> >     });
> > 
> >     _fbtnMainHelpBtn.addActionListener(new ActionListener()
> >     {
> >       public void processAction(ActionEvent e)
> >       {
> >       enqueueUG(new UserGesture(UserGesture.HELP,this,null));
> >       }
> >     });
> >   }
> > 
> > } 
> > 
> > -------------------------------------------------------------------
> > ### - JSP PAGE
> > -------------------------------------------------------------------
> > 
> > <f:view>
> > <html>
> > ..............
> > <body>
> >   <h:form onkeypress="return blockEnter(event);"
> >     binding="#{PageReferReason.form}" id="form">
> > 
> >   <div class="avivaLogo">
> > .................
> >     <h:commandButton                
> > binding="#{PageReferReason.mainLogoutBtn}"/>
> > .................
> >     <h:commandButton                
> > binding="#{PageReferReason.mainHelpBtn}"/>    
> > .................
> >   </div>
> > 
> >   <div class="mainDiv">
> > 
> >     <!-- Combo: PageReferReason.referReason ====================-->
> >     <h:selectOneMenu binding="#{PageReferReason.referReason}"
> >             id="referReason"> 
> >         <f:selectItems id="itmReferReason"
> >             binding="#{PageReferReason.itmReferReason}"/> 
> >     </h:selectOneMenu>
> >     <h:outputText binding="#{PageReferReason.lblVerbose}"
> >             id="lblVerbose"/>
> >     <h:inputTextarea binding="#{PageReferReason.verbose}"           
> > id="verbose"/>
> >         ..........................
> > </div>
> > </h:form>
> > ......
> > </body>
> > </html>
> > </f:view>
> > 
> > 
-- 
Tonio Caputo
[EMAIL PROTECTED]
4864-4154

Reply via email to