According to me, this is normal.
Because in the JSF lifecycle, after the valuechangelistener, the phase
is 'update model values', so the values you 'get' in the
valuechangelistener (your bean properties) haven't yet been updated.
Besides, if you read these values in a binded UIcomponent, a
component.getnewvalue() instruction will work, because the phase 'apply
request values' has been completed.
Regards,
Richard
Meghana a écrit :
I am sorry I should have included my code snippet before itself.
Here we go!
<h:outputText value="#{Message.hardware_type}" />
<h:selectOneRadio value="#{ServiceBean.hardwareType}"
onclick="submit()" immediate="true"
valueChangeListener="#{ServiceBean.hardwareTypeChanged}">
<f:selectItems value="#{ServiceBean.HWTypes}"/>
</h:selectOneRadio>
public void hardwareTypeChanged(ValueChangeEvent event) throws
SQLException, Exception{
FacesContext context = FacesContext.getCurrentInstance();
String prevCategorySelected = (String)event.getOldValue();
String newCategorySelected = (String)event.getNewValue();
if(!newCategorySelected.equalsIgnoreCase(prevCategorySelected)){
// Value changed. Change the drop down values.
if(newCategorySelected.equals("Desktop")){
desktopSelected = true;
debug("Setting desktopSelected field to:
"+isDesktopSelected());
}
else if(newCategorySelected.equals("Laptop")){
laptopSelected = true;
debug("Setting laptopSelected field to:
"+isLaptopSelected()+" Laptop Type: "+laptopType);
}
context.renderResponse();
}
}
}
Based on what hardware type is selected Desktop items/laptop items
are displayed.
The code for that is
<h:outputText value="#{Message.desktop_type}"
rendered="#{ServiceBean.desktopSelected}"/>
<h:panelGroup rendered="#{ServiceBean.desktopSelected}">
<h:selectOneRadio value="#{ServiceBean.desktopType}"
id="desktop_type">
<f:selectItem itemValue="Standard User Desktop"
itemLabel="Standard User Desktop" />
<f:selectItem itemValue="Non User Desktop"
itemLabel="Non User Desktop" />
</h:selectOneRadio>
<h:message styleClass="error" for="desktop_type"/>
</h:panelGroup>
<h:outputText value="#{Message.laptop_type}"
rendered="#{ServiceBean.laptopSelected}"/>
<h:panelGroup rendered="#{ServiceBean.laptopSelected}">
<h:selectOneRadio value="#{ServiceBean.laptopType}"
id="laptop_type">
<f:selectItem itemValue="Standard User Laptop"
itemLabel="Standard User Laptop" />
<f:selectItem itemValue="Power User Laptop"
itemLabel="Power User Laptop" />
</h:selectOneRadio>
<h:message styleClass="error" for="laptop_type"/>
</h:panelGroup>
<h:outputText value="#{Message.docking_station}"
rendered="#{ServiceBean.laptopSelected}"/>
<h:panelGroup rendered="#{ServiceBean.laptopSelected}">
<h:selectOneRadio
value="#{ServiceBean.dockingStation}" id="docking_station">
<f:selectItem itemValue="Yes" itemLabel="Yes" />
<f:selectItem itemValue="No" itemLabel="No" />
</h:selectOneRadio>
<h:message styleClass="error" for="docking_station"/>
</h:panelGroup>
<h:outputText value="#{Message.wireless_access}"
rendered="#{ServiceBean.laptopSelected}"/>
<h:panelGroup rendered="#{ServiceBean.laptopSelected}">
<h:selectOneRadio
value="#{ServiceBean.wirelessAccess}" id="wireless_access">
<f:selectItem itemValue="Yes" itemLabel="Yes" />
<f:selectItem itemValue="No" itemLabel="No" />
</h:selectOneRadio>
<h:message styleClass="error" for="wireless_access"/>
</h:panelGroup>
*/Bruno Aranda <[EMAIL PROTECTED]>/* wrote:
And what about the "immediate" attributes? Are you using them? Can you
show an snippet of your code?
Bruno
On 6/13/06, Meghana wrote:
> Its already in session scope :-(
>
>
> Bruno Aranda wrote:
>
> Could you try if that works if your bean is in session scope?
>
> Bruno
>
> On 6/13/06, Meghana wrote:
> > Hi,
> > I have a form in which the displayed input fields change based
on a radio
> > button field. When ever the field value is changed a corresponding
> > valuechangelistener method is called and then the new set of
input fields
> > are displayed. But the values entered for those conditionally
rendered
> > fields are not retaining values in the backing bean. They are
all null.
> I've
> > been banging my head over this for quite a while.
> > Any ideas please!
> >
> > Thanks a lot,
> > -M
> >
> >
> > __________________________________________________
> > Do You Yahoo!?
> > Tired of spam? Yahoo! Mail has the best spam protection around
> > http://mail.yahoo.com
>
>
>
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam? Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com