Struts2 初探

来源:互联网 发布:淘宝客服招聘在家 编辑:程序博客网 时间:2024/05/20 01:13

Struts2 初探

 发布日期:2007-8-3 10:09:00 发布者:[IT电子教育门户]   评论:[ 0]  浏览: 420
Struts2 发布已经有一段时间了。
(http://struts.apache.org/downloads.html)
最近正在做的项目已经到了尾声,利用这段空闲的时间,我试用了一下Struts2。
跟Struts1 相比,Struts2 做了不少改变,例如:Struts2提供一个ActionSupport基类去实现常用的接口。Action接口不是必须的,任何有execute标识的POJO对象都可以用作Struts2的Action对象,具体可以参考apache官方网站。
http://struts.apache.org/2.0.6/index.html
我的感觉是Struts2变的更加灵活了。
好,既然是学习,Hello World 程序是必不可少的。
第一步,先看看系统要求:
Platform Requirements
Struts 2 requires
Servlet API 2.4 
JSP API 2.0 
Java 5 
更具体系统要求可以在文档说明中找到。
第二步,了解如何部署Struts2程序。
我手上没有支持Struts2的IDE所以只有自己多花点力气了。
在以下链接中可以找到部署Struts2程序的三种方法:
http://struts.apache.org/2.0.6/docs/ready-set-go.html
1. Use the blank template (在struts-2.0.6-all.zip)
2. run the Maven archetype
3. just setup a web infrastructure from scratch
我用了第三种方法。
http://struts.apache.org/2.0.6/docs/simple-setup.html 这个链接上面说的很明白。主意需要库,多了或者少了都会出问题。
我就试过把struts-2.0.6-all.zip包里边的lib全部拷贝过去,结果在tomcat启动的过程中出现一下错误:
严重: Error filterStart
查看tomcat日志,消耗了不少时间终于排除了问题。
可能是里边的一些plugin包引起的,以后在慢慢研究怎么回事。
好了,按照simple-setup.html中的说明把程序部署好。部署好之后的目录结构如下:
struts2
├─META-INF
│      MANIFEST.MF

├─WEB-INF
│  │  web.xml
│  │
│  ├─classes
│  │  │  struts.xml
│  │  │
│  │  └─org
│  │      └─sen
│  │          └─hello
│  │                  HelloWorld.class
│  │
│  └─lib
│          antlr-2.7.2.jar
│          commons-beanutils-1.6.jar
│          commons-chain-1.1.jar
│          commons-logging-1.0.4.jar
│          commons-validator-1.3.0.jar
│          freemarker-2.3.8.jar
│          ognl-2.6.11.jar
│          oro-2.0.8.jar
│          struts2-core-2.0.6.jar
│          xwork-2.0.1.jar

└─hello
        HelloWorld.jsp
【注】我这个程序跟http://struts.apache.org/2.0.6/docs/hello-world.html上面的Hello world 是一样的,只是改了包名。 
启动tomcat,成功了^_^。 
因为我用的开发工具试myEclipse 于是,我便试着把这个项目迁移到eclipse中去
在eclipse 中新建项目Struts2 然后把所有的文件复制过去。最后目录结构为:
struts2
│  .project
│  .mymetadata
│  .classpath

├─src
│  │  struts.xml
│  │
│  └─org
│      └─sen
│          └─hello
│                  HelloWorld.java

├─WebRoot
│  ├─WEB-INF
│  │  │  web.xml
│  │  │
│  │  ├─lib
│  │  │      struts2-core-2.0.6.jar
│  │  │      ...
│  │  └─classes
│  │      │  struts.xml
│  │      │
│  │      └─org
│  │          └─sen
│  │              └─hello
│  │                      HelloWorld.class
│  │
│  ├─META-INF
│  │      MANIFEST.MF
│  │
│  └─hello
│          HelloWorld.jsp

├─.myeclipse
└─.settings
        ...
myEclipse 可以正确发布,但是启动的时候出现问题。
java.lang.UnsupportedClassVersionError: org/apache/struts2/dispatcher/FilterDispatcher (Unsupported major.minor version 49.0)
经过检查发现原因所在:我elipse的编译器虽然设成了jdk1.5,但是eclipse启动tomcat的时候还是用之前设的jdk1.4。把启动在myeclipse的application server下面找到tomcat并且把jdk设为jdk1.5便ok了。 
上面是我在试用struts2的时候遇到的一点波折。
环境搭好了,剩下的就是抓时间应该深入学习一下。
原创粉丝点击