rich:comboBox and a4j:support onselect
stefanorg Mar 30, 2011 9:17 AMHi all,
i want to test the selection of a combobox that reRender an area onselection my code is:
<rich:comboBox id="periodoCombo" value="#{sf_periodo}" defaultLabel="Seleziona Periodo"
enableManualInput="true" required="true"
requiredMessage="E' necessario selezionare un periodo" width="412">
<f:selectItem itemValue="Ultima settimana" />
<f:selectItem itemValue="Ultimo mese" />
<f:selectItem itemValue="Personalizzato" />
<a4j:support status="mainStatus" event="onselect" reRender="dataCtr"/>
</rich:comboBox>
when i select "Personalizzato" i want to reRender dataCtr, that shows 2 rich:calendar:
<a4j:outputPanel id="dataCtr" layout="block">
<rich:calendar id="dataInizioCalendar" value="#{sf_dataInizio}" datePattern="dd/M/yy HH:mm"
defaultTime="00:00" rendered="#{sf_periodo eq 'Personalizzato'}"
required="true" requiredMessage="Selezionare Data Inizio">
<a4j:support status="mainStatus" event="onchanged" reRender="searchPnl" />
</rich:calendar>
<rich:calendar id="dataFineCalendar" value="#{sf_dataFine}" datePattern="dd/M/yy HH:mm"
defaultTime="23:59" rendered="#{sf_periodo eq 'Personalizzato'}"
required="true" requiredMessage="Selezionare Data Fine">
<a4j:support status="mainStatus" event="onchanged" reRender="searchPnl"/>
</rich:calendar>
</a4j:outputPanel>
The problem is that when i do:
RichFacesClient rich = new RichFacesClient(this.client);
//il combo box e' un elemento di richfaces quindi utilizzo le facility del RichFacesClient
rich.setComboBox("periodoCombo", "Personalizzato");
//controllo se presenti data inizio e data fine
rich.setCalendarValue("dataInizioCalendar", "1/11/11 00:00");
i get an error "No component ID was found for dataInizioCalendarInputDate" because the dataInizioCalendar is not renderd, to test that i've used:
assertEquals(false, this.server.findComponent("dataInizioCalendar").isRendered());
Does the rich.setComboBox(...) fires the onselect event? What i'm doing wrong?
Thanks