写点什么

Apache Struts 2.2.1 GA 版发布

  • 2010-08-17
  • 本文字数:856 字

    阅读完需:约 3 分钟

昨日,Apache 软件基金会发布了 Struts 2.2.1 GA 版。Struts 2.2.1 包含了重要的安全修复。Apache 建议开发者将现有的Struts2 应用升级到Struts 2.2.1。

Struts 2.2.1 的内部变化主要有:

  • XWork 已经迁移到了 Apache 软件基金会,现在成为了 Struts 2 的一部分。新版 XWork 2.2.0 也随着 Struts 2.2.1 一同发布。未来,XWork 将会迁移到 Struts 2 中。
  • XWork Maven artifact 现在已位于org.apache.struts.xwork下。
  • XWork 使用了最新版的 OGNL 3.0,OGNL 源代码仓库则位于 Github 上。
  • Javassist 依赖被 OGNL 排除,要记得将其包含进来,除非在 JBoss 服务器上加载应用。
  • 解决了 XWork 一些突出的缺陷,感兴趣的读者可以参考 CVE-2010-1870: Struts2/XWork remote command execution 来了解详情。
  • 所有的示例应用(除了 jboss-blank)都包含了 Javassist 依赖。
  • 新的 jboss-blank 示例应用使用了 JBoss 服务器,它没有将 jboss-blank 库包含进来,因为 JBoss 服务器已经提供了。
  • 增加了新的 Freemarker 缓存选项,这会提升标签的渲染速度,感兴趣的读者可以参考 WW-3467 并了解关于 FreeMarker 的更多信息。

Struts 2.2.1 修复了之前版本的众多 bug,主要修复列举如下:

  • <s:reset type=“image”> 标签上缺少 src 属性
  • Struts2 showcase 无法在 JBoss 5.1 上部署
  • struts-sitemesh-plugin 2.1.8 中 FreeMarkerPageFilter 的失效问题
  • XWork FileManager 不会解码 URL
  • ConventionUnknownHandler 与 rest 插件的协作问题
  • StrutsSpringTestCase 的内存泄漏问题
  • css_xhtml 主题无法应用在 IE8 上,在其他浏览器上也无法正常使用
  • javassist 在 JBoss 5.1 上的问题

Struts 2.2.1 的主要改进列举如下:

  • 升级至 OGNL 2.7
  • 文件上传:可以对 allowedTypes 参数设置不同的 File Content Type 值
  • 完全集成了 SiteMesh 2、Freemarker 2.4.2 及 Velocity 1.3
  • 将 xwork 核心迁移至 Struts 2
  • 将 FreeMarker 升级至 2.3.16
  • 将 Velocity 引擎升级至 1.6.3

感兴趣的读者可以从 Struts 官方网站下载最新版的 Struts 2.2.1,也可以阅读 InfoQ 中文站的《深入浅出 Struts 2》迷你书快速上手 Struts 2。

2010-08-17 08:213522
用户头像

发布了 88 篇内容, 共 266.1 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

重磅解读:K8s Cluster Autoscaler模块及对应华为云插件Deep Dive

华为云开发者联盟

容器 k8s 服务

医疗界“最强大脑”落户杭州!阿里巴巴联合浙大一院共同打造

互联网

揭秘在召唤师峡谷中移动路径选择逻辑?

华为云开发者联盟

算法 地图 最短路径

LeetCode题解:77. 组合,递归回溯,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

移动安全加固助力 App 实现全面、有效的安全防护

蚂蚁集团移动开发平台 mPaaS

安全攻防 App风险 mPaaS

DB-Engines 11月数据库排名:PostgreSQL坐稳同期涨幅榜冠军宝座

华章IT

数据库 postgresql

谈谈敏捷开发概念和迭代开发方案

Learun

敏捷开发

【运维思考】如何做好云上运维服务?

嘉为蓝鲸

云计算 运维 数字化转型 数据中心 云服务

【涂鸦物联网足迹】API及SDK介绍

IoT云工坊

软件开发 物联网 API sdk 云平台

阿里云官方推出操作系统“等保合规”镜像 -- Alibaba Cloud Linux 等保2.0三级版

阿里云基础软件团队

内核

又一道比较运算符相关的面试题让我明白基础很重要

Gopher指北

Go 语言

会展云技术解读 | 面对突发事故,APP如何做好崩溃分析与性能监控?

京东科技开发者

云计算 云服务

mongodb 源码实现系列 - 网络传输层模块实现三

杨亚洲(专注MongoDB及高性能中间件)

MySQL mongodb 分布式 高性能 分布式数据库mongodb

技术分享:WebAssembly能否重新定义前端开发模式?

葡萄城技术团队

webassembly

架构师训练营第 1 期第 7 周总结

owl

极客大学架构师训练营

如何实现后台管理系统的权限路由和权限菜单

徐小夕

Java 大前端 编辑器 H5 数据可视化

帮助企业摆脱困境,名企归乡工程师:能成功全靠有它!

Philips

敏捷开发

【云小课】版本管理发展史之Git+——代码托管

华为云开发者联盟

git 代码管理 托管

百亿级数据分表后怎么分页查询?

艾小仙

Java MySQL 数据库 编程语言 分库分表

【涂鸦物联网足迹】涂鸦云平台接口说明

IoT云工坊

人工智能 物联网 API sdk 云平台

终于啃完了这份Java核心原理+框架“面试圣经”,成功五面上岸美团

Java架构追梦

Java 架构 面试 微服务 框架开发

每周一看:16份文档资料,程序员软硬实力全概览,总有一个适合你

小Q

Java 学习 程序员 架构 面试

《Python:Python编程简介:计算机编程和机器学习入门指南》

计算机与AI

Python

架构训练营 - 第7周课后作业 - 学习总结

Pudding

终于啃完了Java核心原理+框架“面试圣经”成功五面上岸美团

小Q

Java 学习 编程 架构 面试

解决大中型浏览器(Chrome)插件开发痛点:自定义热更新方案——2.基于双缓存更新功能模块

梁龙先森

Java chrome 大前端 浏览器 技术方案

浅谈API网关(API Gateway)如何承载API经济生态链

华为云开发者联盟

API 网关

架构师训练营第一期 - week8

习习

价值超10亿美元的直播系统架构图是什么样子的?

冰河

系统架构 高并发 高性能 亿级流量 直播架构

Apache DolphinScheduler 是如何走进Apache的

代立冬

大数据 数据湖调度 DolphinScheduler Apache DolphinScheduler

架构师训练营 - 第 7 周课后作业(1 期)

Pudding

Apache Struts 2.2.1 GA版发布_Java_张龙_InfoQ精选文章