Martin, That solved my problems. Thanks very much for you explanation.
I think JSF still need a bit of work. Coming from ASP.NET background I think .NET Web Form framework is quite a bit easier to master. I hope JSF or Shale will bridge the gap soon. Regards, Yee -----Original Message----- From: Martin Marinschek [mailto:[EMAIL PROTECTED] Sent: Monday, 31 October 2005 6:13 PM To: MyFaces Discussion; [EMAIL PROTECTED] Subject: Re: Bugs with commandLink rendered="..." Is userBean a request scoped Bean? If yes, you'll need to use a session bean instead or use t:saveState to save the state of the user bean between requests. The problem is that the link is rendered, you click on it, the lifeCycle is triggered again and now the rendered attribute of the link is evaluated to false as the userBean has lost its state - so the link is not decoded and the action is not triggered. regards, Martin On 10/31/05, Yee CN <[EMAIL PROTECTED]> wrote: > > > > Hi, > > > > I think there are is a bug in commandLink in treating the "rendered" > attributes. > > > > Below is a demonstration. The jsf page concerned is to have an 'edit' more > and a 'browse' mode. When the page is in edit mode the 'Save Changes' and > 'Cancel' button will show, else the 'Edit' and 'Back' button will show. > > > > The rendering of the buttons are OK, however as it stands the 'Save Changes' > and 'Cancel' button will not trigger the backing bean action. If I take away > the rendered="." attributes I will see all 4 buttons, but everything works > as expected. > > > > ------------------------------------------------------------------------- > > > > <h:commandLink value="Edit" action="#{userBean.editUserAction}" > rendered="#{!userBean.isEdit}"> > > </h:commandLink> > > <f:verbatim>  </f:verbatim> > > <h:commandLink value="Back" action="#{userBean.backAction}" > rendered="#{!userBean.isEdit}"> > > </h:commandLink> > > <h:commandLink value="Save Changes" action="#{userBean.saveAction}" > rendered="#{userBean.isEdit}"> > > </h:commandLink> > > <f:verbatim>  </f:verbatim> > > <h:commandLink value="Cancel" action="#{userBean.backAction}" > rendered="#{userBean.isEdit}"> > > </h:commandLink> > > > > > > > Is there a work around for this? > > > > Thanks > > > > Yee -- http://www.irian.at Your JSF powerhouse - JSF Trainings in English and German

