Estou de cara aqui!
Sempre usei o rich:calendar, que é algo trivial, e nunca tive problemas.
[editado] Fiz os testes no windows e tudo funcionou, só usando o Firefox no Ubutu é que percebi este problema.[/editado]
A declaração dos componentes na página é algo simples:
<tr>
<td width="15%">
<h:outputLabel for="dataInicial" id="lblDataInicial"
value="#{msg.lblDataInicial}" styleClass="labelClass"/>
</td>
<td>
<rich:calendar id="dataInicial" value="#{eventoBean.dataInicial}"
datePattern="dd/MM/yyyy"/>
</td>
<td width="15%">
<h:outputLabel for="dataFinal" id="lblDataFinal"
value="#{msg.lblDataFinal}" styleClass="labelClass"/>
</td>
<td>
<rich:calendar id="dataFinal" value="#{eventoBean.dataFinal}"
datePattern="dd/MM/yyyy"/>
</td>
</tr>
E as propriedades no managed bean são do tipo Date:
private Date dataInicial = new Date();
private Date dataFinal = new Date();
O botão de comando que submete o formulário é este:
<a4j:commandButton value="#{msg.btnPesquisar}" id="btnPesquisar"
action="#{eventoBean.pesquisar}" styleClass="botao" immediate="true"/>
e no managed bean o método chamado é o seguinte:
public String pesquisar(){
try{
System.out.println("this.conta: " + this.conta);
System.out.println("this.dataInicial: " + this.dataInicial);
System.out.println("this.dataFinal: " + this.dataFinal);
setLancamentos(
pesquisarLancamentos(
FinancareBD.getInstance()
.obterContaContabil(Long.valueOf(this.conta)),
this.dataInicial, this.dataFinal));
}
catch(Exception e){
e.printStackTrace();
}
return null;
}
O método estásendo invocado, portanto não é um problema de estar submetendo a página para um managed bean errado.
Porém, o System.out dentro do método é o seguinte, independente da data que o usuário selecione:
this.conta: 1
this.dataInicial: Sat Jul 25 16:08:54 BRT 2009
this.dataFinal: Sat Jul 25 16:08:54 BRT 2009
As propriedades não são modificadas no managed bean de jeito nenhum! :roll:
Alguém já teve esse problema com a versão 3.3.1 do Richfaces?
Vou fazer testes com a versão anterior, só por desencargo.
[]'s