首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调用多个valuechangelistener jsf-1.2 richfaces

调用多个valuechangelistener jsf-1.2 richfaces
EN

Stack Overflow用户
提问于 2015-08-11 07:51:08
回答 1查看 584关注 0票数 2

是否可以在h:selectBooleanCheckbox中调用多个valueChangeListener,我正在尝试将一个值传递给两个Beans。

豆子不认识对方。注射也不是一个选择。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-13 06:51:01

我在这里发现了一种可能性:http://www.java-samples.com/showtutorial.php?tutorialid=606http://www.pretechsol.com/2013/04/jsf-value-change-listener-example.html#.VcnZbPntlBc

在某些情况下,您可能希望多个值更改侦听器或多个动作侦听器响应某个事件。在这种情况下,您需要一个稍微不同的语法来将侦听器附加到JSF元素。在使用时,值被附加到更改侦听器或操作侦听器到

通过使用valueChangeListener或actionListener属性的JSF元素。使用属性语法时,可以使用方法绑定表达式将方法绑定为侦听器。但是,这只在附加一个侦听器时起作用。

当您需要附加多个侦听器时,有一个JSF标记用于值更改侦听器,另一个用于操作监听器,用于将一个或多个侦听器附加到元素。当使用标记语法时,您将指定一个实现监听器接口的类。对于值更改侦听器,标记是一个名为type的属性,它是侦听器的类名。侦听器必须实现的接口是javax.faces.event.ValueChangeListener。它只有一个必须实现的方法:

代码语言:javascript
复制
void processValueChangeEvent(ValueChangeEvent);

因此,如果我们假设FlightSearch类和FlightTypes类都实现了ValueChangeListener,那么我们可以将它们都附加到如下元素:

代码语言:javascript
复制
<h:selectOneRadio layout="lineDirection" value="#{flight.tripType}" onclick="submit()" immediate="true"> 
   <f:valueChangeListener type="com.apress.projsp.FlightSearch"/> 
   <f:valueChangeListener type="com.apress.projsp.FlightTypes"/> 
   <f:selectItems value="#{types.tripTypes}"/> 
</h:selectOneRadio>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31936101

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档