【问题标题】:Primefaces Schedule - Extracting data from eventPrimefaces Schedule - 从事件中提取数据
【发布时间】:2013-11-26 08:44:02
【问题描述】:

经过一天的痛苦,我终于将数据纳入日程安排事件。

我现在尝试在单击时设置事件,它使用数据变量加载一个新页面。

这是xhtml

<p:schedule id="schedule" 
    value="#{LeadListScheduleController.eventModel}" widgetVar="schedule">  
    <p:ajax event="eventSelect"  
        listener="#{LeadListController.redirectToLeadEdit(Data)}" /> 
</p:schedule> 

还有 Java

public void redirectToLeadEdit(String data) throws IOException {
    redirect("/lead/" + data + "/edit");
}

如何获取事件中现在的数据对象,以便 url 起作用?

【问题讨论】:

    标签: java jsf primefaces


    【解决方案1】:

    作为showcase explains,不需要手动将当前选择的事件作为参数传递给监听器方法。只需声明一个方法,您可以在其中捕获传入事件并从中获取数据。之后,您可以使用所需的一切调用重定向方法。

    <p:ajax event="eventSelect"  
            listener="#{LeadListController.onEventSelect}" />
    
    public void onEventSelect(SelectEvent selectEvent) {  
        ScheduleEvent event = (ScheduleEvent) selectEvent.getObject();  
        redirect(event.getData());
    }  
    

    除此之外,与问题完全无关,我鼓励您将托管 bean 命名为 bean 类名,首字母小写。这是一个已经讨论过的java规范here

    【讨论】:

    • 非常感谢,我想就差不多了。出于某种原因,我在访问方法
    • 2013 年 11 月 27 日上午 9:56:02 com.sun.faces.lifecycle.InvokeApplicationPhase 执行警告:找不到方法:co.beek.web.lead.LeadListScheduleController@dbd48c4.onEventSelect(org. primefaces.event.ScheduleEntrySelectEvent) javax.el.MethodNotFoundException: 找不到方法: co.beek.web.lead.LeadListScheduleController@dbd48c4.onEventSelect(org.primefaces.event.ScheduleEntrySelectEvent)
    猜你喜欢
    • 1970-01-01
    • 2014-01-21
    • 1970-01-01
    • 2020-03-16
    • 2014-09-27
    • 2010-10-09
    • 1970-01-01
    • 2012-05-08
    • 2013-05-24
    相关资源
    最近更新 更多