What scope is entryBean? If entryBean is requestScope, then entryBean.subProjects will be null on each request and would need to be set before the decoding is done, otherwise the 2nd choice will never decode as it will be disabled. If entryBean is not requestScope than you also have a problem as you cannot use component binding with non-request scoped objects.
-Andrew On Sun, Feb 14, 2010 at 8:32 AM, Jean-Noël Colin <[email protected]> wrote: > Hi > > I need to write a simple page with 2 selectOneChoice components, the second > being dependent on the first. This means that the second should be disabled > as long as a correct value in the first one has not been selected. Also, the > items in the second need to be dynamically loaded depending on the content on > the first one. > > I guess this should be easily feasible in Trinidad, but obviously, I must be > missing something because I can't get it to work. it seems that the value of > the second component never gets properly populated in the bean entry. Also, > strangely, in the 'valuechangelistener', the oldvalue is always null, even > when a proper value was correctly selected. > > Also, is it possible to avoid the presence of a 'empty' selectItem by > auto-selecting the first valid entry (how can I do that)? > > Thanks a lot for your help > > Jean-Noel Colin > > > > > <tr:selectOneChoice id="project" > label="project" > binding="#{entryBean.projectSelector}" > > value="#{entryBean.currentLine.projectId}" showRequired="true" > autoSubmit="true" > unselectedLabel="Select" immediate="true" > > valueChangeListener="#{entryBean.projectChangeListener}"> > <f:selectItems > value="#{globalData.activeprojects}" /> > </tr:selectOneChoice> > <tr:selectOneChoice id="subproject" > label="sub-project" > partialTriggers="project" > binding="#{entryBean.subProjectSelector}" > > value="#{entryBean.currentLine.subProjectId}" showRequired="true" > unselectedLabel="Select" > disabled="#{empty entryBean.subProjects}"> > <f:selectItems > value="#{entryBean.subProjects}" /> > </tr:selectOneChoice> > >

