论坛首页 Java企业应用论坛

一次和jsf的接触

浏览 10637 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-03-15  

同事看了richfaces,觉得很漂亮,决定来一次学习研究.要搞jsf,当然要收集资料啦.开动,加上两年前接触过一会jsf,一下子就收集了下面如此之多的链接:

jsf

richfaces
ajax4jsf
RichFaces Developer Guide
seam
MyFaces -
JSF Training Course Materials

stand1.1doc

jsf1.1tag
JavaServer Faces 1_1_01API
RenderKit1.1

stand1.2Doc

jsf-ri-1.2tld
JavaServer Faces API 1.2MR1
Standard HTML RenderKit

The J2EE(TM) 1.4 Tutorial
javaserverfaces: JavaServer Faces Community

question

SF: DataTable and CommandLink

china-resource

jsf opendoc
AgileJava - Discuz! Archiver
1.开始啦:发现JSF Training Course Materials的资料不错.一个个下载下来学习.基本第二个section就把jsf的特性展示出来了.
2.自己做个crud怎样呢?好吧,动手:
  首先需求:
      商店,买菜的商店
      1.商品列表,翻页
      2.编辑商品
3.咕咚咕咚的就把商品列表做出来了,

期间遇到一些不适应症状:
   翻页:以前的操作是客户端指定了页码,然后传给服务器;现在变成用一个隐藏变量放置当前页码,然后Page提供了first,next,prev,last四个方法,作为command action被调用,而Page()回调注入的PageAble接口来填充数据.
   一个最郁闷的问题是:h:datatable里面包括CommandLink的时候,CommandLink会失效.发现要使用SessionBean才能正常,或者这个调用方法总是返回相同的数据.就像The J2EE(TM) 1.4 Tutorial   的bookstore跟seam的booking例子那样(做例子也不模拟得实际点,搞得我花了半天才找到问题).

咕咚咕咚的又跑去下了The J2EE(TM) 1.4 Tutorial的教程的boostore来看,意犹未尽之下,又去下载seam的booking例子来看.运行之后,发现好神气.譬如seam在一个表格的一行用 <s:link action="#{hotelBooking.selectHotel(hot)}" value="View Hotel" id="viewHotel">,
@Begin
   public void selectHotel(Hotel selectedHotel)
   {
      hotel = em.merge(selectedHotel);
   }
 调试状态下看看,神气啊, selectedHotel居然就是用来显示那一行的hotel对象.一模一样.发现原来是state to session在起作用,.
但是想想觉得这个开销不小.要把列表的数据都丢session里.当然咯,环境允许的话这样用来肯定爽.

4.</s:link>用<s:link action="#{hotelBooking.selectHotel(hot)}" value="View Hotel" id="viewHotel">tomcat,sun提供的参考实现需要指定
  <listener>
        <listener-class>com.sun.faces.config.ConfigureListener</listener-class>
   </listener>
5.参考实现跟myfaces使用request bean的运行结果有些不同.貌似myfaces支持save state to client,这样有些特性默认就有了.

最后得到的结论如果不用session bean,真不知道怎么用好jsf.这个问题如果能很好解决,感觉挺好的.?
   
      

</s:link>
   发表时间:2007-03-15  
中看不中用,花瓶一个
     
0 请登录后投票
   发表时间:2007-03-15  
giscat 写道
中看不中用,花瓶一个
     

或许你应该在深入研究后,再下结论,一项技术出现和成长总有他合适的土壤。JSF的出现已经六七年了,发展至今一直没有想象中的火爆,但现在各大厂商的支持及天生的亲IDE性,但会其有个良好的发展,况且现在JSF才1.2而已。
0 请登录后投票
   发表时间:2007-03-15  
swing能火起来就好罗
0 请登录后投票
   发表时间:2007-03-16  
swing好像跟JSF没啥关系吧,一个是GUI,一个是WebUI框架。楼主提到的分页问题,如果深入了解JSF,从组件的概念出发去解决的话,是很容易的,既可以做到load-on-demand,也不需要通过页面去麻烦的传递参数,当然也可以提供这样的支持。
0 请登录后投票
   发表时间:2007-03-16  
Swing也是一个很好的客户端展现
0 请登录后投票
   发表时间:2007-03-16  
LZ我近来也一直在看jsf希望能交流下,
0 请登录后投票
   发表时间:2007-03-18  
我一直在学习这东西,感觉挺好的,很简拮,程序很好懂,并且配制很容易,不象struts那样麻烦
0 请登录后投票
   发表时间:2007-03-18  
JSF的确不怎么样。我用过一段时间,放弃了。真的太复杂了,而且bug很多。如果要追求组件编程的话可以看一下Wicket(http://wicket.sourceforge.net),比JSF好用太多了。IDE的支持纯粹是钱的问题。
0 请登录后投票
   发表时间:2007-03-18  
以前有个sun 的 creator什么的编译器,支持jsf,bug一堆,从此弃用,不知道现在用jsf的有多少。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics