原文 http://blog.sina.com.cn/s/blog_6095cf300100ms69.html
前些天剛好開始 Struts 的學習,但是在配置 Struts 2 的時候就遇到了很大的障礙,我使用的 Struts 2 版本是 2.2.1 (即 Struts 2.2.1 ),我參考了《精通 J2EE 》 ( 第二版 ) 里的有關 Struts 2 的配置內容,該書使用的是 Struts 2.0.9) 。我首先從 Struts 2.2.1 的 lib 文件下復制了“ freemarker-2.3.16.jar , ognl-3.0.jar , struts2-core-2.2.1.jar , xwork-core-2.2.1.jar ”,然后粘貼在了項目的 lib 文件下,也可以通過“ Add External JARs ”的形式導入,但是如上所作后,在啟動 Tomcat 時出現了如下的錯誤:
警告 : Could not create JarEntryRevision for [jar:file:/E:/Programming/apache-tomcat-6.0.26/webapps/Struts2/WEB-INF/lib/struts2-core-2.2.1.jar]
...
2010-9-24 11:16:02 com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
信息 : Parsing configuration file [struts-default.xml]
2010-9-24 11:16:02 com.opensymphony.xwork2.util.logging.jdk.JdkLogger error
嚴重 : Dispatcher initialization failed
Unable to load configuration. - bean - jar:file:/E:/Programming/apache-tomcat-6.0.26/webapps/Struts2/WEB-INF/lib/struts2-core-2.2.1.jar!/struts-default.xml:48:178
...
Caused by: Unable to load bean: type:org.apache.struts2.dispatcher.multipart.MultiPartRequest class:org.apache.struts2.dispatcher.multipart.JakartaMultiPartRequest - bean - jar:file:/E:/Programming/apache-tomcat-6.0.26/webapps/Struts2/WEB-INF/lib/struts2-core-2.2.1.jar!/struts-default.xml:48:178
...
Caused by: java.lang.NoClassDefFoundError: org/apache/commons/fileupload/RequestContext
...
2010-9-24 11:16:02 org.apache.catalina.core.StandardContext filterStart
嚴重 : Exception starting filter struts2
Unable to load configuration. - bean - jar:file:/E:/Programming/apache-tomcat-6.0.26/webapps/Struts2/WEB-INF/lib/struts2-core-2.2.1.jar!/struts-default.xml:48:178
...
Caused by: Unable to load configuration. - bean - jar:file:/E:/Programming/apache-tomcat-6.0.26/webapps/Struts2/WEB-INF/lib/struts2-core-2.2.1.jar!/struts-default.xml:48:178
...
Caused by: Unable to load bean: type:org.apache.struts2.dispatcher.multipart.MultiPartRequest class:org.apache.struts2.dispatcher.multipart.JakartaMultiPartRequest - bean - jar:file:/E:/Programming/apache-tomcat-6.0.26/webapps/Struts2/WEB-INF/lib/struts2-core-2.2.1.jar!/struts-default.xml:48:178
...
Caused by: java.lang.NoClassDefFoundError: org/apache/commons/fileupload/RequestContext
...
Caused by: java.lang.ClassNotFoundException : org.apache.commons.fileupload.RequestContext
...
2010-9-24 11:16:02 org.apache.catalina.core.StandardContext start
嚴重 : Error filterStart
2010-9-24 11:16:02 org.apache.catalina.core.StandardContext start
嚴重 : Context [/Struts2] startup failed due to previous errors
這些錯誤很讓我摸不著頭腦,經多方查閱資料后,在 Struts 2.2.x 中應該導入如下 7 個 JAR 文件
1) commons-fileupload-1.2.1.jar
2) commons-io-1.3.2.jar
3) freemarker-2.3.16.jar
4) javassist-3.7.ga.jar
5) ognl-3.0.jar
6) struts2-core-2.2.1.jar
7) xwork-core-2.2.1.jar
其實,這里還有一個小竅門,我們可以將 Struts 2.2.x 根目錄下的 apps 文件夾下的 struts2-blank-2.2.1.war 文件進行解壓,然后找到 WEB-INF 下的 lib 目錄,我們可以發現里面列出了 7 個 JAR 文件,剛好這 7 個就是我們配置 Struts 2.2.x 需要導入的 JARs 文件:
現在服務器應該就可以正常啟動了!
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
