最近由于工作原因,接触了一段时间的JSF(Java Server Faces),感觉这个东西还是很不错的,值得推荐给大家。JSF其实已经发展了很多年了,我最早注意到JSF,是在2004年公司举行的Sun Java技术大会上,一位Sun公司的工程师演示使用Creator(那时还不是免费的)拖拽Web页面。不过那个时候的JSF尚显稚嫩(结论来自当时研究JSF的同事之口),而现在则已经成熟稳定(我最近的实践可以证明)。
这里将罗列一些和Java Server Faces相关的资料。权且作为JSF系列的开篇吧。
JSF是由JCP(Java Community Process)推动的,目的是想为现在百花争鸣的Web框架树立一个标准,从而使其标准化;Sun在新发布的Java EE 5.0里面也着重强调了JSF的地位。可见JSF的战略意义还是蛮深远的。
JSF(Java Server Faces)规范起草与2001年,1.0版本发布与2004年初,并于当年发布了1.1版本。JSF规范目前的版本是1.2。Sun公司针对规范提供了一个参考实现,该项目的设计者之一就是Struts的作者Craig McClanahan。Sun的官方信息:
http://java.sun.com/javaee/javaserverfaces/ 你还可以在里面找到Sun提供的JSF参考实现,目前版本为1.2_01。
JSF项目首页,这里提供了参考实现的代码以及相关子项目
https://javaserverfaces.dev.java.net/
Sun的Java EE官方指南,里面关于JSF(Java Server Faces)的介绍比较详细:
http://java.sun.com/javaee/5/docs/tutorial/doc/
MyFaces,Apache旗下开源的JSF实现
http://myfaces.apache.org/ 。提供了完整的JSF实现,并提供了非常有用,功能更加丰富的扩展包,使得JSF使用起来更加简单快捷。加之Oracle将ADF Faces贡献给了MyFaces,使得它越来越引人注目了。
在这里你能解决很多在使用MyFaces中遇到的问题:
http://wiki.apache.org/myfaces/
Struts也开始向JSF转型,并作为一个独立的项目来运行,它的名字叫Shale,目前还没有发布release版本。这里有两篇关于Shale的文章: