使用JSF开发web已经快2个月了,整体感觉很好用,功能强大,使用灵活,提供了不少之前用struts开发时候所没有实现的功能。
同样是基于MVC的web技术,struts的用户实现主要是围绕Action, Form展开的;而jsf则是通过backingbbean来操作具体的流程,当然struts的action中,jsf的backingbean中可能通过调用session facade等做一些比较复杂的business logic进而与hibernate/dao进行交互。不过现在我们仅仅是讨论表层web tier的一些东西。
JSF提供了诸如swing在java中的功能,使得在thin client中能够很方便的达到fat client中的效果,而不是需要每台机都要安装jre使用jws来运行各种服务。
JSF目前还在发展中,因此不可避免有些组件的功能未达到实际使用时的需要,这时候就必须自己定义一些组件来满足需求,比如在JSF的datatable中如果radiobutton将不能实现单选的功能。本栏记录了本人在实际应用开发JSF时所遇到的一些问题以及开发的一些组件。