本文内容针对 3.3版本
关于ajax原理:
最近用firefox看了一下RichFaces的ajax报文
发现它的post的header中没有X-Http-With XmlHttpRequest
觉得很奇怪,后来看到jboss RichFaces社区有人回答这个问题。说是用开发人员认为XmlHttpRequest在有的浏览器下面有问题,因而采用了在post中增加 AJAXREQUEST
_viewRoot 的方式。
我猜还有部分原因是因为为了配合jsf的生命周期,ajax4jsf的JavaScript引擎采用模拟的方式发送post,jsf的server并不知道发过来的post是同步的还是异步的,因而请求都按照lifecycle的6个周期进行处理。
只是发现有AJAXREQUEST
后,某些部分做特殊处理(也就是说这个标志位表明是ajax请求)。
请求的结果(也就是需要reRender的部分的xml)返回给ajax4jsf的JavaScript引擎,由JavaScript引擎更新到页面上。
关于a4j的使用
:
这里说明几个容易混乱的概念。
ajaxSingle
input控件的子component中包含该属性(通常是<a:support>上)
如果ajaxSingle=false,该input提交ajax请求之后,在post中被提交的所有的字段,都会触发验证。
如果ajaxSingle=true,该input提交ajax请求之后,只有该字段本身的验证会被触发。
reRender
表示ajax出发之后,需要重绘那些区域。
这个属性和ajaxSingle毫无关系,举个例子,a区域的reRender写的是b区域,
则即使是a区域有错,ajax请求完成后,错误信息也不会显示出来(因为指定的是b区域刷新)
a:region
当页面上没有a:region的时候,默认提交的所有字段都进行处理(即 AJAXREQUEST
_viewRoot
)。
如果页面上有a:region,则只有a:region中的内容被处理,例如AJAXREQUEST
testa4jform:j_id8
其中 testa4jform:j_id8是a:region的component Client Id。
这里所说的提交,不论是用a:support或者a:commandbutton,都是ajax提交。
例如,将某个input控件表为ajaxSingle=false,则应该整个form的input都被处理,如果将其中的一部分框在a:region中并提交,则只有这部分被处理。
分享到:
相关推荐
RichFaces 3.3的官方帮助文档,英文,pdf格式。官网上经常不能下载,这下好不容易给我下下来了。
对于jboss Richfaces3.3界面重用做了比较详尽的讲述。 在对界面了解的同时,也对Richfaces组件也能有进一步的了解。 里面的英文理解起来很简单,可以提高英文阅读水平。 对于richfaces与ajax的诸多关系,也做了介绍...
Richfaces3.3.3常用组件使用手册 便于学习Richfaces和a4j和jsf框架 很好很实用
最新的richfaces 3.3 用户指南
richfaces Demo 最新版3.3下载,直接放在tomcat上即可运行,访问网址:http://localhost:8080/richfaces-demo-3.3.0.GA-tomcat6
A good for RichFaces
NULL 博文链接:https://yangguoyk.iteye.com/blog/1936791
这是用richfaces3.1写的一个学习笔记。需要的看看 在jboss4.2下运行正常。 在tomcat中如果抛异常。 是因为jar包不一样导致的。可以给我发留言。我给你完整包 liucheng418@163.com
richfaces的最新版本,只包括jar文件。
vedemo 3.3最新Eclipse工程, 导入eclipse即可使用.
richfaces-demo-3.1.6.GA-tomcat6richfaces-demo-3.1.6.GA-tomcat6richfaces-demo-3.1.6.GA-tomcat6richfaces-demo-3.1.6.GA-tomcat6richfaces-demo-3.1.6.GA-tomcat6richfaces-demo-3.1.6.GA-tomcat6richfaces-demo...
Richfaces标签 简介Richfaces标签相关内容 初学者认知
richfaces标签学习笔记richfaces标签学习笔记richfaces标签学习笔记richfaces标签学习笔记
Nuxeo 所需补丁的 Richfaces 3.3.1.GA 源的分支。 原始资源可以在这里下载: 如何构建 运行mvn clean install 。 该构建适用于 Maven 2.2.1。 结果罐子: richfaces-impl-3.3.1.GA-NX8-SNAPSHOT.jar richfaces-ui...
这是richfaces 3.3.1的用户手册PDF版
教会如何使用richfaces,及richfaces应用
Richfaces组件使用指南、richfaces手册(很详细、很全面的教程)
关于richfaces的一些比较好的资料,希望大家看了能有收获
RichFaces组件简介,复合组件,日期控件,Ajax标签, 轻松实现。RichFaces组件简介,复合组件,日期控件,Ajax标签, 轻松实现。RichFaces组件简介,复合组件,日期控件,Ajax标签, 轻松实现。
使用richfaces需要用到的jar包! commons-beanutils-1.7.0.jar,commons-codec-1.3.jar,commons-collections-3.2.jar,commons-digester-1.8.jar,commons-discovery-0.4.jar,commons-el-1.0.jar,commons-...