Simple Thinking
24岁,开始一个新的年月
-
JSF:几点收获
2007/03/16
1.导航问题:传说JSF的navigation可以在to-view-id中加入表达式以支持动态参数传递,也就是说可以不必每次都返回一个没有参数的页面,尤其是在redirect的时候。但是试了很多次都不行,郁闷得要死。最后还是用了一个其他办法才解决。在basebackbean里面调用了一个redirect方法:
getFacesContext().getExternalContext().redirect(target);
如此这般才实现了跳转。
这种封装严密的框架就有这样的问题,总是没有顾及到所有的情况。我遇到的是在数据操作之后要返回操作之前的页面,是要带参数的。。。死活就是带不过去。。
2.翻页跳转的问题:采用dataTable 和dataScroll,由于没有可用的教程及说明,在跳转的时候总是跳转到不带参数的页面。
比如:myfaces.faces?para=1 在这个页面里面要翻页的时候,却翻到了myfaces.faces,离想象的太远。后来研究dataScroll自己生成的js才发现它的流程,之所以dataScroll一定要包含在一个form里面,就是依靠form用post的方式传递数据,改变Context里面的翻页参数,然后从这个form提交到form自己,实现翻页。所以如果页面带参数,就必须在这个form里面设置一个hidden值,是当前页面的参数name-value对;而且这个hidden在设置的时候要注意不能使用JSF的inputHidden,因为它会自动把id替换成跟form相关的,这样会跟参数名不符,仍然达不到要求的目的。








