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:ajax
和 dateSelect
事件:
<p:ajax event="dateSelect" listener="#{managedBean.onDateSelect}" update="eventDetails" oncomplete="PF('eventDialog').show();" />
这会弹出一个对话框,你可以把你想添加到事件中的任何信息,用户输入它,所以不需要传递任何参数。
您好,我在项目中遇到了困难,在此向您寻求帮助。欢迎您提出不同的看法。 我正在使用 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:ajax
和 dateSelect
事件:
<p:ajax event="dateSelect" listener="#{managedBean.onDateSelect}" update="eventDetails" oncomplete="PF('eventDialog').show();" />
这会弹出一个对话框,你可以把你想添加到事件中的任何信息,用户输入它,所以不需要传递任何参数。