JSF 2 事件列表?

Posted

技术标签:

【中文标题】JSF 2 事件列表?【英文标题】:List of JSF 2 events? 【发布时间】:2011-12-31 21:56:17 【问题描述】:

到目前为止,我只知道和见过

<f:event type="preRenderView" listener="#situationHelper.load"/>

我想知道在哪里可以找到除preRenderView 之外的其他页面(或查看)事件列表?

特别是,我正在寻找在绑定过程之前触发的事件,(preRenderView 在组件绑定后运行)

谢谢。

【问题讨论】:

这有帮助吗? javaserverfaces.java.net/nonav/docs/2.0/javadocs/javax/faces/… 【参考方案1】:

来自 JSF 2.1 的 tag library document

要为其安装侦听器的事件的名称。下表 列出此属性的有效值以及相应的事件 注册侦听器操作的类型。

“type”标签属性的值 发送到监听方法的事件类型 preRenderComponent javax.faces.event.PreRenderComponentEvent preRenderView javax.faces.event.PreRenderViewEvent postAddToView javax.faces.event.PostAddToViewEvent preValidate javax.faces.event.PreValidateEvent postValidate javax.faces.event.PostValidateEvent

除了这些值之外,任何扩展 javax.faces.event.ComponentSystemEvent 的 java 类的完全限定类名都可以用作“type”属性的值。

因此,除了上面列出的值之外,您还可以将javax.faces.event.ComponentSystemEvent 的直接已知子类的完全限定类名 用于type 标签属性 ,可以在Java docs中找到。

【讨论】:

谢谢,您回答了我的问题“除 preRenderView 之外的其他页面(或视图)事件列表”。但是,它们都不会在组件被绑定之前触发。 @hirikarate:不客气,除了这些值之外,您还可以使用扩展 javax.faces.event.ComponentSystemEvent 的任何 java 类的完全限定类名作为 type 标签属性。查看我的更新跨度>

以上是关于JSF 2 事件列表?的主要内容,如果未能解决你的问题,请参考以下文章

JSF 中未填充下拉列表

JSF 2.0在bean(或页面?)之间传递数据

动态更新两个JSF PrimeFaces列表框

在 JSF 表达式语言中如何获取列表的长度?

JSF / PrimeFaces使用selectOneMenu将列表中的项目关联起来

没有dataModel的JSF 2 dataTable行索引