世界原本很太平,Struts作为大部分程序员依赖的事实标准长治久安,而JSF作为Sun晚婚晚育的结晶,忍受着大部分程序员的冷淡。
一夜间,Struts宣布了一个新的子项目---Shale,基于JSF标准完完全全的推倒重来(Apache Stuts Team Announcement),这便同时掀开了两个战团:
一个是关于“Is Struts dead? ”的
It's Official, Struts is History!
So Struts is Dead, huh?
还有TSS上的口水大战
另一边厢是“JSF能用么?”
如IBM的JSF for nonbelievers: Clearing the FUD about JSF
Tapestry作者的Tapestry, JSF and FUD
同样少不了TSS上的口水大战
其中讲得比较有见地的是Spring Live作者那篇<So Struts is Dead, huh? >,意译一下:
“其实Struts在2002年已经死了,而且大部分的Java web framework也已经在上年死掉。为什么呢?因为他们已经没有办法在未来的版本中再加入什么新鲜重要的feature。也许你说WebWork 会用 XMLHttpRequest 作 client-side validation,Tapestry 会使用 pretty URLs,但这些对于一个framework来说都不是首要的功能。
起码,现在Struts的开发者有勇气站起来说, "we're in maintenance mode",其他框架的开发人员呢?
唯一不应该站出来说"我们已转入维护状态"的是JSF和Tapestry的小朋友。他们的团队应该说:"我们正在使框架更加易用"
JSF 应该修正: POST for everything, lack of bookmarkability, bad validation messages (好消息是这个在JSF1.2里面得到了修正)等等。
Tapestry同样应该简化,每个tapestry页面现在大约需要4个文件,它应该简化成只必须其中两个(template and Java class),而另外两个是可选的(page specification 和 i18n keys)
我想Struts-Shale会成功,前提是它能够吸取其他框架的精华,比如 IoC、 Interceptors、 HTML templates, etc。 能够很好的与middle-tier frameworks如 Spring, Hivemind and EJBs集成。Struts-Shale的开发者现在有了一个很好的机会, 让我们祝愿他们不只开发出yet another framework....”(我们听这三个单词已经听到过敏了)
分享到:
相关推荐
在本文中,我们将深入探讨如何使用Shale库来实现JavaServer Faces(JSF)应用程序的客户端验证。Shale是一个开源的Java库,它为JSF提供了一系列强大的功能,包括验证框架,可帮助开发者轻松地创建复杂的客户端和...
通过这种方式,Shale简化了在JSF中实现客户端验证的过程,无需像在Struts中那样进行繁琐的配置。此外,由于Shale与Apache Commons Validator的集成,开发者可以利用已有的验证规则,如信用卡号格式检查等,这极大地...
开发JSF或Shale开发用的包,自己准备研究这两个东西却发现需要很多包一下子又找不全,总算找了差不多了,拿出来与大家分享.其中包含:shale-core.jar commons-beanutils.jar commons-chain.jar commons-codec....
- **强大的扩展能力**:JSF框架可以方便地扩展,例如通过Shale这样的扩展框架来增加更多功能。 - **全面的集成**:JSF可以与其他Java EE组件如Spring和JPA进行集成。 ##### 市场和商业特性 - **广泛的采用**:JSF...
Shale是一个功能强大的Java Web框架,它主要设计用于构建可重用、模块化的Web应用程序。在1.0.4版本中,它包含了源代码和相关的文档,这些资源对于理解Shale的工作原理、如何使用它以及如何对其进行扩展至关重要。在...
- **Apache Shale Framework (Struts 2.0)**:这是对传统Struts的一个重大改进和扩展,由于与Struts 1.x系列存在较大差异,因此被作为独立项目进行开发。 **本课程将关注于传统的Struts Action Framework (Struts 1...
shale-remoting 1.0.4
- Shale则更注重SOA架构,与JSF深度集成。 #### 二、纯手工打造Struts2示例程序 为了更好地理解Struts2的工作原理,我们可以手动创建一个简单的“Hello World”示例程序。 ##### 2.1 准备环境 - JDK版本:1.5及...
报告提到了四个关键的Web开发框架:JavaServer Faces (JSF)、Struts 2、Shale和WebWork。 首先,JSF作为一种Java标准框架,为Web应用程序提供了组件化的开发方式,简化了用户界面的构建,通过MVC设计模式提高了代码...
- **Apache Shale Framework (Struts 2.0)**:这是一个与 Struts 1.x 有较大区别的项目,因此被分成了单独的项目进行开发。 ### Struts 的优势与劣势 - **优势**: - **统一开发模式**:所有开发者都遵循相同的...
通过对这个源码包的深入研究,开发者可以学习如何有效地使用JSF构建Web应用程序,掌握Seam和Shale如何增强JSF的功能,同时也能了解到JavaEE开发的一些最佳实践。通过实际操作这些代码,开发者能够加深对JSF生命周期...
MRST-Shale:一个开源的页岩气模拟器 王斌( ) 美国路易斯安那州立大学Craft.io与霍金斯大学石油工程系 OpenShale是一个轻量级的开源库,它基于SINTEF ICT( )。 它要求通过运行“ startup.m”将MRST添加到...
**ETL工具 beeload (shale)免费版 详细使用教程** **1. ETL工具简介** ETL,即Extract, Transform, Load,是数据处理领域中的关键环节,用于从不同源系统抽取数据,经过清洗、转换,再加载到目标系统。beeload是一...
- **历史**:Seam 的发展历程,从 2002 年 Struts 的巅峰到 2007 年 Seam 1.0 的发布,以及其他框架(如 Tapestry、WebWork、Wicket 和 Shale)的发展情况。 ##### Seam 的核心概念 - **组件和依赖注入**: - Seam...
jar包,官方版本,自测可用
jar包,官方版本,自测可用
674 Interbedded shale and limestone (shale dominant)(2st option) 页岩与石灰岩互层(页岩为主)(2) 675 Interbedded calcareous shale and limestone (shale dominant) 钙质页岩与石灰岩互层(页岩为主) ...