jsf中带有参数的primefaces计划

primefaces schedule with parameter in jsf

您好,我在项目中遇到了困难,在此向您寻求帮助。欢迎您提出不同的看法。 我正在使用 primefaces Schedule 来执行给定的任务,但我不知道如何 我可以将参数传递给我的支持 bean.I 希望在触发计划事件(如 SelectEvent 或 dateSelect )时在支持 bean 中使用此参数。例如,如果我有一个参数 personeID 我会传递这个 bean 的参数,以便 actionListener 何时激活它 设置可以在bean中初始化,这样我就可以使用了。 我的代码

<p:schedule id="schedule" value="#{inscrireAgendaBean.eventModel}" widgetVar="myschedule"  process="@form" axisFormat="HH:mm"  columnFormat="dddd D/MM" firstHour="08" locale="fr" timeZone="GMT+1"  timeFormat="HH:mm">

  <p:ajax event="dateSelect" listener="#{inscrireAgendaBean.onDateSelect}" update="eventDetails" oncomplete="PF('eventDialog').show();" />

  <p:ajax event="eventSelect" listener="#{inscrireAgendaBean.onEventSelect}" update="eventDetails" oncomplete="PF('eventDialog').show();" />

 </p:schedule>

我只想知道是否有可能在触发 eventSelect 或 dateSelect 时向我的 bean 添加参数 谢谢!!!

我从你的问题中了解到,当你 select 一个事件时你想触发一个监听器,所以你必须添加一个 p:ajax 和一个 eventSelect 事件:

<p:schedule id="scheduleLocale"  value="#{managedBean.schedule}" draggable="false" resizable="false" axisFormat="HH:mm"  columnFormat="dddd D/MM" firstHour="08" locale="fr" timeZone="GMT+1"  timeFormat="HH:mm" >
    <p:ajax event="eventSelect" listener="#{managedBean.onEventSelect}" update="eventDetails" oncomplete="PF('eventDialog').show();" />
</p:schedule>

在您的 managedBean 上,onEventSelect 方法如下:

public void onEventSelect(SelectEvent selectEvent) {
    event = (ScheduleEvent) selectEvent.getObject();
}

所以 getObject() 将允许您检索像 personelID 这样的信息,这取决于您是否在第一次输入时实际输入了 personelID使用 event = new DefaultScheduleEvent()

创建了事件

要通过 select 在日程表上添加日期,您可以使用 p:ajaxdateSelect 事件:

<p:ajax event="dateSelect" listener="#{managedBean.onDateSelect}" update="eventDetails" oncomplete="PF('eventDialog').show();" />

这会弹出一个对话框,你可以把你想添加到事件中的任何信息,用户输入它,所以不需要传递任何参数。