详细页面:http://www.verydemo.com/demo_c107_i1890.html
最近一直在看JSF的网站学习,写了点心得,内容是乱七八糟。
JSF的过程:别人说是恢复视图,我也不知道恢复试图是什么意思.但是我的感觉就是,我想恢复视图的意思就是,将他的JSF动作通过html解析器解析成html的动作,例如如果用户这个时候只是点击了一个链接等简单的事情的话(也就是说我们没有必要进行验证,更新模型值等的操作),就直接跳出(execute complite),整个生命周期完成,跳到render的周期。
第二个阶段是获得请求值,如果这个阶段发生了不可预知的错误,应该就响应完成了。
就算你的请求值是为空的话,也没有什么关系的,依旧去执行下一个阶段。
第三个部分才是调用validation的阶段
验证成功的话,就更新模型值阶段了,更新模型值没有什么错误的话,就调用你的action的方法了。
1.
rendered 这是一个逻辑判断表达式的属性,通过这个表达式结果是true,或者false来验证拥有该render的这个组件是不是要呈现到这个View中.
2.
JSF中我们进行导航的标准是faces-config.xml中进行配置,比如说,我们可以使用from-outcome 来进行调控
然后我们在写一个action中返回在faces-config.xml中form-outcome的值
但是在JSF2中,我们可以直接用action=“xxx"来进行导航。
JSF中我们可以采用h:selectBooleanCheckbox 的true或者false确定属性的显示
我们应该是用的是property-'is'来和后台的bean进行交互,这个无关规则,只是我们Java property 书写的规范罢了。
3.
Facelts里的ui:repeat 和h:datatable中的区别在于ui:repeat仍然是一种迭代的关系,而datatable确是一种表现结构了。
4.
标签<f:param/>这个就是用来进行传递参数的
5.
默认的我们使用的是action来进行导航,默认的是action是用来进行forward的命令的,但是我们可以使用
return ****?faces-redirect=true来将视图的请求由forward变成rediect命令.
6.
依赖注入的关系,managerbean是支持依赖注入的虽然没有spring有用但是,还是非常有用的,举个例子,通常注入的最好是一个ApplicationScoped的范围
@ManagedBean(eager=true)//这个是声明,这个managerBean是可以提供给managedbean注入的
public class Bean1{
....
}
@ManagedBean
public class Bean2{
@ManagedProperty(value="#{bean1}")
private Bean1 bean1;
.....
}
7.…………………………………………………………………………