根据Red Hat官方文档,总共有五个组件在内部工作以提供丰富的用户体验.以下是五个组成部分.
AJAX过滤器 : AJAX过滤器用于区分来自客户端浏览器的不同类型的请求.要将此组件包含到应用程序中,您需要在应用程序的web.xml文件中注册RichFaces Filter. AJAX Filter在JSF应用程序的不同阶段表现不同.
AJAX Action Components : 操作组件负责将客户端请求从浏览器发送到AJAX引擎,从那里它将处理请求并将所需视图作为响应呈现.
AJAX容器 : AJAX容器在概念上类似于弹簧容器.它基本上是识别客户端浏览器的特定区域来处理AJAX请求.
Skinnability : 皮肤和主题一起被称为Skinnability.该模块独立运作,为整个外观提供广泛的支持.
RichFaces JavaScript引擎 : JavaScript引擎在客户端运行,它将更新发送到AJAX引擎以准备响应.这个引擎自动运行,因此我们不需要编写任何额外的代码来控制它.
以下是RichFaces的架构图在MVC范例中的应用.
在上图中,用户的活动将作为"JS事件"处理.之后,"JS Event"将被传送到"XML Filter",它只是AJAX Filter的一个组件. "XML Filter"负责生成和处理用户请求.所有其他组件都是不同jar文件的内部组件.我们需要使用适当的标签库才能使用这些功能.