DateSelectEvent无法识别我正在使用Primefaces 4.0和maven

时间:2014-01-30 11:43:25

标签: jsf maven primefaces

  
    

我想根据选定的EmployeeJoing日期将weekEndingDate渲染为星期六日期     但我在DateSelectEvent中遇到问题

  
<p:outputLabel value="Employee Joining Date:MM/dd/yyyy" />
                <p:calendar value="#{employeeBean.employeeJoiningDate}"

                    id="ejoinDate" required="true" label="Employee 
Joining   Date">
                    <p:ajax event="dateSelect"  
update="weekEndingDate" listener="#{employeeBean.dateChange}"></p:ajax>
                    </p:calendar>
            <p:outputLabel value="Week ending Date" />
                <p:calendar value="#{employeeBean.weekEndingDate}"
                    id="weekEndingDate">
                <f:convertDateTime pattern="MM/dd/yyyy"    type="date"   />
                </p:calendar>

这里我在Bean中使用这个方法

        public void dateChange(DateSelectEvent event) {
            System.out.println("doing well in office");
            Date date = event.getDate();
            System.out.println("File Date: " + date);
            System.out.println("Hello... I am in DateChange");
        }

2 个答案:

答案 0 :(得分:0)

如果您使用的是较新版本的primefaces 3.5或4,则不推荐使用此事件。请改用此代码。

public void onDateSelect(SelectEvent selectEvent) {
    Date date = (Date) selectEvent.getObject();
    event = new DefaultScheduleEvent("onDateSelect", date, date);
}

您也可以查看以下链接 http://forum.primefaces.org/viewtopic.php?f=3&t=27590

更新::

ajax代码没有更改事件将保留为dateSelect不要更改为选择

<p:ajax event="dateSelect"  update="weekEndingDate" listener="#{employeeBean.dateChange}" />

public void dateChange(SelectEvent event) {
        System.out.println("doing well in office");
        Date date = (Date)event.getObject();}

应该可以正常工作。它在我的应用程序中运行良好。

这是您要检查的另一个链接 http://www.primefaces.org/showcase-labs/ui/calendarAjax.jsf

答案 1 :(得分:0)

另一个解决方案只是为了知道,如果我们处理除了@this之外的东西,那么我们也不能得到bean方法,

public void dateChange(SelectEvent event){}