Primefaces p: календарь со значением p: ajax не обновляется (задержка в один шаг)

Я хочу вызвать бин после выбора даты вp:calendar, В моей настройке у меня есть@Named @ViewScoped Боб, классObWithDate это@Entity с полем датыvalidFrom.

<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>

Хорошо, что метод бобовupdate(ObWithDate myO) вызывается с правильным объектом каждый раз, когда я выбираю дату. Плохо то, чтоmyO.validFrom не имеет правильного значения. Это всегдаone step behind:

Field initialized with 2012-01-01 GUI change to 2012-01-05, bean method debugs to 2012-01-01 GUI change to 2012-01-15, bean method debugs to 2012-01-05

Эта проблема сводит меня с ума, я обнаружил несколько проблем с неправильно обновленными значениями, а также некоторые оp:calendar, Большинство из них предлагают использовать атрибутselectListener="#{calendarBean.handleDateSelect}" сhandleDateSelect(DateSelectEvent event) метод. Но я хочу вызвать мой метод, так как я хочу передать текущий экземпляр переменной.

Firebug verifies, that the correct updated values are transmitted in a POST request I'm using Primefaces 3.2 and JBoss-7.1.1-Final Even without the p:dataTable and only using p:calendar the issue is still the same. The wrong value of the debug output can be observed for the method-Object update(ObWithDate myO) as well for the corresponding entry in myBean.listObWithDates. <p:ajax immediate="true" .../> does not solve this issue.

Update MattHandy мне очень помог, итоговый вопросHow to get the corresponding list item in the ajax call inside the beans method? сформулировано в последующемJSF p: календарь в p: dataTable: как получить строку события p: ajax dateSelect.

Ответы на вопрос(2)

Ваш ответ на вопрос