近日,Apache官方网站发布了关于Apache Struts 1 EOL(End-Of-Life)
新闻稿及
通告。该新闻稿指出,2013年4月5日,Apache Struts项目团队正式通知广大开发者,Struts 1.x开发框架结束使命,而且官方将不会继续提供支持。
Struts 1.x项目建立于2000年,最新版本1.3.10发布于2008年12月。同期,Struts社区将精力专一于推进Struts 2框架的发展,截止到2013年4月,已发布了23个版本。据通告称:
这次宣告Struts 1.x退出舞台并再也不提供支持,主要是由于缺乏足够的志愿者来提供支持。
与此同时,在
新闻稿中,Apache Struts团队强烈建议你们学习Struts 2框架,Struts 2更加现代、高度解耦、功能丰富且易于维护。就在3月,Apache Struts刚刚发布了2.3.12版,这个版本为维护版本,包含了一些很小的改进,如:
- 重构全部验证器,可经过 OGNL 设置参数
- Tag 的 required 属性更名为 requiredLabel 支持 HTML5 的 required 属性
- 三个新的 Tiles 插件,用于支持 Tiles 3 结果类型
- 改进支持 JBoss 5 的 Convention 插件
此外,对于正在使用Struts 1.x的开发者或团队,Apache Struts团队就常见问题给出了回答:
Struts 1.x再也不提供支持后,现有资源如何处理?
全部资源将会保留,Apache Struts首页将会提供相关文档的连接,同时也会保留Struts 1.x各个版本的下载地址。全部的Struts 1源代码都可在Apache Struts代码仓库中找到,而且永久保留。全部发布的Maven构件(Maven artifacts)都可经过Maven Central访问。
若是之后发现和Struts 1.x相关的安全问题或严重的Bug,是否还会有相应的修复?
目前来看,是不会的,这也是要宣布EOL的缘由。既然如今已经宣布再也不提供支持,开发者也须要寻找移植方案,将现有的Struts 1代码移植到其余Web框架上。
如今是否是就须要将Struts 1从个人项目中删除?
就目前Struts团队了解的状况来看,没必要当即删除。然而须要意识到的是,将来将不会有针对安全和Bug问题的修复,一旦将来发现上述状况,开发团队须要本身来应对。
若是须要将现有项目从Struts 1移植到其余Web框架,有什么推荐?
您也许会意识到,目前为止Struts 1尚未直接的替代品。您须要根据现有代码的状况,来选择新的开发框架,并经过调整代码来适应新的框架。虽然有不少基于Action的Java Web开发框架均可以实现这个效果,但咱们仍是会推荐Struts 2。由于他更先进、高度解耦、功能丰富且更易于维护。他继承了Struts 1的核心理念,但在架构和API设计上要比Struts 1.x先进不少。此外,其余的替代框架也不错,如
Spring Web MVC、
Grails或
Stripes。
若是想继续对Struts 1进行维护,咱们能够作些什么?
能够随意的为Struts 1进行贡献。有两种方法:从现有代码创建分支并进行改进或吸引社区人士来继续推进Apache Struts项目。若是有足够的人愿意而且有能力来继续提供补丁、进行维护以及长期管理的话,咱们认为有这样的支援者的状况下,或许Struts 1还有但愿。
此消息一出,微博人士也纷纷感慨:
蒼氵: 还记得进公司的第一件事就是把纯JSP的实现的功能用Struts1实现,好怀念啊.........感谢Struts1。
猫砂西瓜: 忘不了那一屏幕的form bean。
KDS-黑暗浪子: 逝去的总归要逝去,一切向前看。仔细想一想,从03到07年我也用这个5年了。
Kaloo2010: 面试再问这个就有的说了。 识时务的马: 怀念一下,当初那个堆砌ActionForm的青葱岁月。