没有人用icefaces吗?

sam.xiao 2008-02-29
看了一下论坛,发现圈子里用richfaces+ajax4jsf的人很多,但是没有很多人用icefaces。我觉得exadel的组件库比起icefaces差得很远,虽然工具的整合性方面做得比icefaces要好,当然jboss在后面撑腰也是很重要的。有兴趣使用icefaces的朋友可以到: www.icefaces.org 去看下,也有一个online的组件库demo:
组件库 (这个是比较早的版本,可以下载1.7beta重新用ant打包部署)
vieri122 2008-03-01
一直在学习RICHFAECES
rockjava 2008-03-05
ICEFaces和myfaces结合起来有点冲突,不知道怎么回事,这几天我正考虑是用richfaces还是icefaces呢
JeffreyHsu 2008-08-01
我使用过icefaces,的确很炫,但icefaces有个非常恶心的地方就是当session过期的时候,画面会被锁定,弹出一个英文的提示session过期的对话框,并要你reload页面。
查遍官方论坛,很多人反映这个问题,得到的答复是无法回避,并且也无法国际化这个对话框的内容,因为是硬编码的

这个是相当恶心啊,即使你的网站不用用户登录也会弹出这个东西

就为了这一点,我只能放弃icefaces
ratking 2010-01-27
JeffreyHsu 写道
icefaces有个非常恶心的地方就是当session过期的时候,画面会被锁定,弹出一个英文的提示session过期的对话框,并要你reload页面。
查遍官方论坛,很多人反映这个问题,得到的答复是无法回避,并且也无法国际化这个对话框的内容,因为是硬编码的

你说的不对,ICEfaces的会话(session)过期时弹出对话框的内容是可以国际化的!
处理方法就:在WEB-INF\classes路径中放一个资源文件bridge-messages_zh_CN.properties

请参阅《Localising "User Session Expired"》:
http://www.icefaces.org/JForum/posts/list/10745.page

和我写的这个汉化包《Submit a Contribution: icefaces-comps_zh.jar》
http://www.icefaces.org/JForum/posts/list/13608.page
XFZZ 2010-02-22
头一次发帖,没想到还是一个被挖坟的帖子,richfaces和icefaces都没有用过,primefaces倒是看过不少,而且感觉很强大,UI组件超多,支持AJAX和JSF2。很多人都说primefaces的功能强于richfaces和icefaces,三者的排序是primefaces>icefaces>richfaces,但是国内使用率richfaces>icefaces>primefaces,当然只是听别人说,没有经过什么太多实践。不过总而言之这样的框架太多了,掌握不过来,会一个就可以了
ratking 2010-07-28
JeffreyHsu 写道
但icefaces有个非常恶心的地方就是当session过期的时候,画面会被锁定,弹出一个英文的提示session过期的对话框,并要你reload页面。
查遍官方论坛,很多人反映这个问题,得到的答复是无法回避

你说的这个弹出User Session Expired的问题,我推测其解决方法如下:
1. 在页面的某个不起眼的地方,用<iframe>或<frame>嵌入另一个网页,比如a.seam(或a.xhtml)
2. 在这个a.seam(或a.xhtml)里,让它自己每隔几分钟(比如1分钟)就刷新一下自己。可以使用<meta http-equiv="refresh" content="60">,或使用JavaScript
3. 在web.xml里配置一个TouchSessionFilter,让这个a.seam会触发这个过滤器。

通过以上3步,就会让你的那个页面即使长时间无用户操作,也会悄悄地调用页面a.seam(或a.xhtml),而这个a.seam每隔一定时间就自动刷新,在刷新时就调用了TouchSessionFilter,而TouchSessionFilter执行时会触动会话(touchSession),这样,会话(Session)就不会过期(Expired)啦,也就不会弹出困扰你的“用户会话过期”的窗口了。

关于这个方案中避免会话过期的原理,请参阅:http://jira.icefaces.org/browse/ICE-4785
不过,ICE-4785中的“<url-pattern>/seam/remoting/*</url-pattern>”这部分,需要你改为自己的指向a.seam(或a.xhtml)的相应URL。
关于这个方案中页面刷新的方法,请参阅:http://www.cnblogs.com/lmjob/archive/2008/08/11/1265164.html
那个a.seam(或a.xhtml)的扩展名到底应该是什么,需要视你的项目实际情况而定。

ratking
2010-07-28
Global site tag (gtag.js) - Google Analytics