gavin king,hibernate的缔造者和seam项目的领导人,已经公布了他对于java ee 6愿望清单的第二和第三部分。今年的早些时候,infoq报道了第一部分。上周,java ee 6(jsr 316)的jsr大纲已经发布供公众复审。
jsf是king的愿望清单第二部分的关注点,它是jboss seam web应用框架的核心组件:
......我是jsf的粉丝,虽然jsf还很不完美,但是因为我喜欢它的整个架构,并认为它的缺点和限制较其它那些我曾经用过的web框架而言更具“可修复性”。当然,无论我对于其它框架感觉如何,忽略jsf都将是愚蠢的。在java领域,jsf轻易地成为成长最快的web框架......
其中,他认为的jsf强项是:
- 应用组件是pojo
- 对于业务逻辑与视图绑定的应用程序来说,jsf的生命周期非常适合。
- managed bean是有状态且上下文相关的
- 标记语言并不仅限于html基本集合
- jsf ui组件模型解决了影响普通html窗体处理和很多其它web框架的一些问题
然而,king也看到了扩展开发的一些问题:
......然而,jsf 1.2还是有些事情不太对劲,这导致facelets、seam、shale、ajax4jsf、icefaces、avatar等产品需要开发jsf的非标准扩展。有人主张,如果你需要使用非标准扩展,那么最好连标准一起避免使用......
基于这点,对于2.0,他提议以下项目(更多的细节请见原文):
- 异步局部提交和展现
- 基于标注的编程模型
- 增强non-face请求的生命周期
- 改进导航规则的协调性
- 错误处理
- facelet的标准化,并简化jsf ui组件的开发
- 可替换的无状态ui组件生命周期
- 数据绑定
- 基于模型的验证
- 允许在消息中使用el
- session失效
king的愿望清单第三部分关注于unified el
.....jsf和jsp所使用的新unified el api是对于java平台真正有益的补充。不幸的是,尽管在设计使用unified el进行工作的java api上付出了许多努力,但是表达式语言本身自jsp初期以来并没有太多的变化。现在刚好过了要求新特性的时间。一个更强大的el可以让我们将表现逻辑禁锢在页面中,而避免使用多余的方法污染业务模型......
其中,他提议作以下增强:
- 方法参数
- switch语句
- 集合大小操作符
- 集合构造函数
- 集合迭代
闽公网安备 35060202000074号