由于struts2框架在eclipse中還沒有像struts1.x那樣的被很好支持。我們使用該框架的時候都需要手工搭建開發環境,其實想想這何嘗不是一種好事,特別對于初學者。在手工搭建Struts2開發環境的時候,可以按如下步驟進行(個人觀點):
1、新建一個WEB項目。
2、往“WEB項目根目錄/WEB-INF/LIB/”中導入struts2所需的jar包,如下所示(版本號可能不同),在此有一個注意事項,等下我會提到。






3、往“WEB項目根目錄/WEB-INF/classes/”中新建struts2所需的struts.xml文件(如下所示:)。
1
<?xml version="1.0" encoding="UTF-8" ?>
2
<!DOCTYPE struts PUBLIC
3
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
4
"http://struts.apache.org/dtds/struts-2.0.dtd">
5
6
<struts>
7
</struts>
8

2

3

4

5

6

7

8

4、修改web.xml文件,所下所示(就是增加一個filter):
1
<?xml version="1.0" encoding="UTF-8"?>
2
<web-app version="2.4"
3
xmlns="http://java.sun.com/xml/ns/j2ee"
4
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
6
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
7
<filter>
8
<filter-name>struts2</filter-name>
9
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
10
</filter>
11
<filter-mapping>
12
<filter-name>struts2</filter-name>
13
<url-pattern>/*</url-pattern>
14
</filter-mapping>
15
</web-app>
16

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

5、到此,開發環境就搭建好了,余下工作就看你自己的了。你可以在上面盡情揮灑你的舞姿。
注意事項:也許初學struts2朋友們經常會碰到struts2導包問題,因為初學者不是很了解到底哪些包是必須的,哪些是可選的,所以盲目的把全部JAR包導入進來,但實際你這樣做會出現問題,全部導入后,會發生沖突,部署項目時,將會出現如下錯誤,項目將無法啟動:
1
信息: Parsing configuration file [struts-plugin.xml]
2
2007-3-21 17:37:29 org.apache.catalina.core.StandardContext filterStart
3
嚴重: Exception starting filter struts2
4
Unable to load bean: type:com.opensymphony.xwork2.ObjectFactory class:org.apache.struts2.spring.StrutsSpringObjectFactory - bean - jar:file:/C:/Program%20Files/tomcat5.5.23/webapps/Hello/WEB-INF/lib/struts2-spring-plugin-2.0.6.jar!/struts-plugin.xml:8:132
5
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:209)
6
at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:101)
7




..
8
Caused by: java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContextAware
9
at java.lang.ClassLoader.defineClass1(Native Method)
10
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
11





12
2007-3-21 17:37:30 org.apache.catalina.core.StandardContext start
13
嚴重: Error filterStart
14
2007-3-21 17:37:30 org.apache.catalina.core.StandardContext start
15
嚴重: Context [/Hello] startup failed due to previous errors
16
2007-3-21 17:37:30 com.opensymphony.xwork2.util.ObjectTypeDeterminerFactory
17
解決的辦法是:我們開始只需導入上面提到的五個包則可,后面在實際的項目中如果要用到別的包時再加入,并在配置上做相應的調整。
2

3

4

5

6

7






8

9

10

11







12

13

14

15

16

17
