Primefaces p: calendário com p: valor ajax não atualizado (atraso de um passo)

Eu quero chamar um bean depois que uma data é selecionada em ump:calendar. Na minha configuração eu tenho um@Named @ViewScoped Feijão, a turmaObWithDate é um@Entity com um campo de dataválido de.

<code><h:form id="fUser">
  <p:dataTable id="dt" var="cum" value="#{myBean.listObWithDates}">
    <p:column>
      <p:calendar id="cValidFrom" value="#{cum.validFrom}">  
        <p:ajax event="dateSelect" listener="#{myBean.update(cum)}"
                update=":fUser:dt"/>  
      </p:calendar>  
    </p:column>
  </p:dataTable>
</h:form>
</code>

O bom é que o método do feijãoupdate(ObWithDate myO) é chamado com o objeto correto toda vez que eu seleciono uma data. O ruim é quemyO.validFrom não tem o valor correto. É sempreum passo atrás:

Campo inicializado com 2012-01-01Mudança da GUI para 2012-01-05, o método bean debuga para 2012-01-01Mudança da GUI para 2012-01-15, o método bean debuga para 2012-01-05

Esse problema me deixa louco, eu encontrei vários problemas com valores não atualizados corretamente e também alguns sobrep:calendar. A maioria deles sugere o uso do atributoselectListener="#{calendarBean.handleDateSelect}" com umhandleDateSelect(DateSelectEvent event) método. Mas eu quero chamar meu método desde que eu quero passar a instância atual da variável.

O Firebug verifica se os valores atualizados corretos são transmitidos em uma solicitação POSTEstou usando o Primefaces 3.2 e o JBoss-7.1.1-FinalMesmo sem op:dataTable e usando apenasp:calendar a questão ainda é a mesma.oerrado valor da saída de depuração pode ser observado para o método-Objectupdate(ObWithDate myO) bem como para a entrada correspondente emmyBean.listObWithDates.<p:ajax immediate="true" .../> não resolve esse problema.

Atualizar MattHandy me ajudou muito, a questão resultanteComo obter o item da lista correspondente na chamada ajax dentro do método beans? é formulado no acompanhamentoJSF p: calendário em p: dataTable: como obter a linha do evento p: ajax dateSelect.

questionAnswers(2)

yourAnswerToTheQuestion