Struts2.1.6测试小记

开发 后端
本文作者在Struts2.1.x推出正式版后做了一些测试。这个Struts2.1.6测试小记中,作者提醒,在使用Struts2.1.x时要注意,这一版本与Struts2.0.x并不完全兼容。

Struts2.1.x终于推出正式版了,迫不急待地下了试试(读者可以从http://struts.apache.org/download.cgi#struts216下载)。从这个版本所带的jar包上看丰富了很多。很多jar包的版本也有所提升。

下载后按着Struts 2.0.14版的方法进行配置,将我以前做的一些程序移植到Struts2.1.6上,启动Tomcat,晕晕,竟然抛出异常说无法装载org.apache.struts2.dispatcher.multipart.MultiPartRequest,看一下异常信息,提示没找到org.apache.commons.fileupload.RequestContext类,但在struts2.0.14中并不需要这个类。于是搜索struts2.1.6带的jar包,发现RequestContext类在commons-fileupload-1.2.1.jar包中,但struts2.0.14并没有这个包。可能是struts2.1.6对文件上传功能的改进,因此,要想正常使用struts2.1.6,至少需要如下6个jar包:

struts2-core-2.1.6.jar
freemarker-2.3.13.jar
commons-logging-1.0.4.jar
ognl-2.6.11.jar
xwork-2.1.2.jar
commons-fileupload-1.2.1.jar

要注意的是,Struts 2.1.6的最小jar包配置比Struts2.0.14多了一个commons-fileupload-1.2.1.jar。Struts2.0.x所需要的最小jar包请读者参阅《Struts2教程1:第一个Struts2程序》,在这篇文章中使用了Struts2.0.11.1,该版本与Struts2.0.14类似。

如果要使用Struts2的注释功能,在Struts2.0.14中只要引用了struts2-core-2.1.6.jar文件即可,而在struts2.1.6中还需要引用struts2-convention-plugin-2.1.6.jar文件,而且注释类的包也变了(又增加了一些新的注释类),Struts2.0.14中的注释类在org.apache.struts2.config包中,而struts2.1.6的注释类在org.apache.struts2.convention.annotation包中。除此之外,有些注释的属性名也变了,如Result注释在struts2.0.14中有一个value属性,表示一个要转入的URL,而在Struts2.1.6的Result注释中使用location属性代替了value属性(不再有value属性了),但它们的使用方法相同。

因此,读者在使用Struts2.1.x时要注意,这一版本与Struts2.0.x并不完全兼容(但大部分还是兼容的)。据我的经验,Struts2.1.x版本将是比较稳定的一个Struts2版本,因此,Struts1.x就是在Struts1.1版本才开始流行起来的。

以前也测试过Struts2的其他版本,经部分测试,目前Struts 2分为三个版本阶段:Struts 2.0.9及以前版本、Struts2.0.10至Struts2.0.14、Struts 2.1.x, 这三类版本都不太兼容,如果确定使用struts2来开发程序,建议直接使用struts2.1.6及以后的版本,这是一个比较稳定的Struts2版本。

【编辑推荐】

  1. Struts2教程:国际化
  2. Struts2教程:实现自已的拦截器
  3. Struts2教程:拦截器概述
  4. Struts2教程:上传任意多个文件
  5. Struts2教程:在Action类中获得HttpServletResponse对象
责任编辑:yangsai 来源: BlogJava
相关推荐

2009-07-20 13:48:58

Struts2.1.6

2009-07-14 13:55:24

MyEclipse S

2011-08-11 13:02:43

Struts2Junit

2011-06-20 10:35:29

MySQL

2009-06-02 16:05:04

Struts驱动开发

2011-05-04 10:18:02

Debian 6

2009-06-24 11:39:45

学习JSF

2023-09-15 10:33:45

前端工程化commit

2009-06-04 08:34:24

Struts2配置struts.xml

2009-07-29 09:54:34

struts2和str

2011-01-10 10:40:19

Ubuntu

2013-05-17 09:56:59

MariaDB

2009-02-04 11:37:15

2009-06-05 10:05:50

struts menustruts2

2019-05-08 14:54:16

PythonWeb服务器

2023-09-22 11:29:11

JavasubList

2009-09-21 18:13:11

Hibernate S

2009-06-04 10:31:00

struts.jar详解

2009-06-25 15:26:25

Struts2教程struts.xml常

2011-03-25 09:47:25

PracticalJa
点赞
收藏

51CTO技术栈公众号