myfaces-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Heinen" <...@recommind.com>
Subject RE: selectOneMenu looses values with myFacesCore 1.1.4
Date Fri, 29 Sep 2006 09:46:10 GMT

Summing up what happenend after clicking the immediate button:

1) setSavedSearchesMenu is called
    public void setSavedSearchesMenu(UISelectOne savedSearchesMenu) {
      this.savedSearchesMenu = savedSearchesMenu;
    }
2) ActionListener is executed and refresh called at the end
private void refresh() {
  FacesContext context = FacesContext.getCurrentInstance();
  ViewHandler viewHandler = context.getApplication().getViewHandler();
  UIViewRoot viewRoot = viewHandler.createView(context,
context.getViewRoot().getViewId());
  context.setViewRoot(viewRoot);
  context.renderResponse();
}

3) getSavedSearchesMenu is called:
public UISelectOne getSavedSearchesMenu() {
   if (this.savedSearchesMenu==null){
      this.populateSavedSearchesMenu();
   } 
   return this.savedSearchesMenu;
}

this.savedSearchesMenu is != null and the children are still there.

4) setSavedSearchesMenu is called again.
The parameter savedSearchesMenu is not null, but all attributes of it
are null. There are no children anymore!!! All UISelectItems are lost!!!

Any ideas Martin or anybody else?
Michael

-----Original Message-----
From: Martin Marinschek [mailto:martin.marinschek@gmail.com] 
Sent: Freitag, 29. September 2006 09:36
To: MyFaces Discussion
Subject: Re: selectOneMenu looses values with myFacesCore 1.1.4

No, it didn't - must be unrelated.

regards,

Martin

On 9/28/06, Grant Smith <work.grant@gmail.com> wrote:
> I'm not sure if this is related, but see my comment on the commit
r449566,
> which definitely breaks UISelect* components for me. Although that
didn't
> make it into 1.1.4, did it ?
>
>
>
> On 9/28/06, Martin Marinschek <martin.marinschek@gmail.com> wrote:
> > Hi Michael,
> >
> > if you create a new View-Root, it is expected that the old
components
> > get lost - I would say that the selectItems should be recreated. Is
> > that the case in your backing bean? Can you try to clean out the
> > binding as well, and see what happens then?
> >
> > regards,
> >
> > Martin
> >
> > On 9/28/06, Michael Heinen <mhn@recommind.com> wrote:
> > >
> > >
> > >
> > >
> > > Hi,
> > >
> > >
> > >
> > > could anybody of the developers please respond to this issue?
> > >
> > > I would like to update to 1.1.4 but the below issue is of course a
show
> > > stopper.
> > >
> > >
> > >
> > > This code works with 1.1.3 so there must be something working
different
> in
> > > 1.1.4.
> > >
> > >
> > >
> > > Michael
> > >
> > >
> > >
> > >
> > >
> > >  ________________________________
> > >
> > >
> > > From: Michael Heinen [mailto:mhn@recommind.com]
> > >  Sent: Mittwoch, 27. September 2006 14:51
> > >
> > >  To: MyFaces Discussion
> > >  Subject: RE: selectOneMenu looses values with myFacesCore 1.1.4
> > >
> > >
> > >
> > >
> > > Sorry for posting answers to my own question but could further
isolate
> the
> > > problem.
> > >
> > > The action listeners that are called by the immediate links,
contain the
> > > following code in order to create new views:
> > >
> > >
> > >
> > > FacesContext context = FacesContext.getCurrentInstance();
> > >
> > > ViewHandler viewHandler =
context.getApplication().getViewHandler();
> > >
> > > UIViewRoot viewRoot = viewHandler.createView(context,
> > > context.getViewRoot().getViewId());
> > >
> > > context.setViewRoot(viewRoot);
> > >
> > > context.renderResponse();
> > >
> > >
> > >
> > > When I remove these lines then the dropdpwn contains all the
expected
> > > values.
> > >
> > > But I have to create a new view in the action listener.
> > >
> > >
> > >
> > > So what's going wrong inside ???
> > >
> > >
> > >
> > > Michael
> > >
> > >
> > >
> > >
> > >
> > >  ________________________________
> > >
> > >
> > > From: Michael Heinen [mailto:mhn@recommind.com ]
> > >  Sent: Mittwoch, 27. September 2006 14:34
> > >  To: MyFaces Discussion
> > >  Subject: RE: selectOneMenu looses values with myFacesCore 1.1.4
> > >
> > >
> > >
> > > I forgot to mention that SearchControllerBean has sessionScope.
> > >
> > >
> > >
> > > During debugging I found out that the corresponding setter
> > > setSavedSearchesMenu is called two times.
> > >
> > >
> > >
> > > public void setSavedSearchesMenu(UISelectOne
> > > savedSearchesMenu) {
> > >
> > >    this.savedSearchesMenu = savedSearchesMenu;
> > >
> > > }
> > >
> > >
> > >
> > > The first time the parameter savedSearchesMenu is correctly
populated.
> > >
> > > Then getSavedSearchesMenu is called.
> > >
> > > The setter is called again then and savedSearchesMenu (of type
> > > HtmlSelectOneMenu) is not initialized anymore.
> > >
> > > All attributes are null or false except _valid which is true.
> > >
> > > Any ideas?
> > >
> > >
> > >
> > > Is this a bug (It did work with 1.1.3) ?
> > >
> > >
> > >
> > > Michael
> > >
> > >  ________________________________
> > >
> > >
> > > From: Michael Heinen [mailto: mhn@recommind.com]
> > >  Sent: Mittwoch, 27. September 2006 14:07
> > >  To: MyFaces Discussion
> > >  Subject: selectOneMenu looses values with myFacesCore 1.1.4
> > >
> > >
> > >
> > > After updating myFacesCore to 1.1.4 a selectOneMenu is not working
> anymore.
> > > I use tomahawk-1.1.3.
> > >
> > > The entries of the select one menu are cleared after clicking an
> immediate
> > > link.
> > >
> > > When I go back to myFacesCore 1.1.3 everything works fine.
> > >
> > >
> > >
> > > Here is the jsp snippet:
> > >
> > > <h:panelGroup>
> > >
> > >    <h:outputText value="Quick Search"/>
> > >
> > >    <t:selectOneMenu id="lastSearch"
> > > binding="#{SearchControllerBean.savedSearchesMenu}"/>
> > >
> > > </h:panelGroup>
> > >
> > >
> > >
> > > SearchControllerBean:
> > >
> > > public UISelectOne getSavedSearchesMenu() {
> > >
> > >             if (this.savedSearchesMenu==null){
> > >
> > >                         this.populateSavedSearchesMenu();
> > >
> > >             }
> > >
> > >             return this.savedSearchesMenu;
> > >
> > > }
> > >
> > >
> > >
> > > I set a breakpoint into the above method.
> > >
> > > savedSearchesMenu is a HtmlSelectOneMenu and it's childrenList
contains
> two
> > > objects:
> > >
> > > An UISelectItem and an UISelectItems with 5 SelectItems.
> > >
> > > But these are not displayed anymore in the html. The dropdown is
empty.
> > >
> > > Any ideas?
> >
> >
> > --
> >
> > http://www.irian.at
> >
> > Your JSF powerhouse -
> > JSF Consulting, Development and
> > Courses in English and German
> >
> > Professional Support for Apache MyFaces
> >
>
>
>
> --
> Grant Smith
>


-- 

http://www.irian.at

Your JSF powerhouse -
JSF Consulting, Development and
Courses in English and German

Professional Support for Apache MyFaces





Mime
View raw message