关于Struts 2的正确配置(struts2.2.1出错问题的解决)
文章出处: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文件:
现在服务器应该就可以正常启动了!
方法二:
把ognl-3.0.jar换成ognl-2.6.11.jar
这个方式也可以。
以上,这两种方法都是有效的解决方法。
分享到:
相关推荐
2. **Struts2配置**:在Struts2的应用中,我们需要确保Action请求被重定向到HTTPS。这可以通过在`struts.xml`配置文件中使用`<constant>`标签设置`struts.action.excludePattern`属性来实现。 ```xml ...
Struts2是Java EE开发中一个非常流行的MVC框架,用于构建可维护、可扩展的Web应用程序。在开始使用Struts2之前,...在实际开发中,你可能还需要了解更多关于Struts2的特性,如拦截器、插件、国际化、异常处理等内容。
首先,要配置Struts2框架,你需要确保拥有正确的库文件。在Struts2.3.3版本中,除了核心库如`struts2-core-2.3.3.jar`和`xwork-core-2.3.3.jar`之外,还需要其他的依赖库,例如`commons-fileupload-1.2.2.jar`、`...
关于命名空间配置,当需要在同一个Web应用中定义同名Action时,Struts2通过命名空间进行区分。通过为`package`元素设置`namespace`属性,可以为包下的所有Action指定共同的命名空间。例如,将上面的配置改为: ```...
**FreeMarker与Struts2的整合配置详解** FreeMarker是一个基于Java的模板引擎,它用于生成动态HTML、XML或其他格式的文本输出。Struts2是一个流行的MVC(模型-视图-控制器)框架,用于构建Java Web应用程序。将...
以下是关于Struts2与Freemarker配置的详细步骤和相关知识点: 1. **Freemarker简介**: - Freemarker 是一个基于模板的语言,主要用于生成HTML或其他格式的文本输出。它的核心是模板文件,开发者可以使用...
正确地配置这两个文件对于构建高效、稳定的Struts2应用至关重要。同时,灵活运用这些配置选项,可以显著提高应用的可维护性和扩展性。 在实际开发中,还需要结合具体项目需求对这些配置进行细致调整,确保满足业务...
### Struts2基本配置使用手册:深入解析与实践 #### 搭建Struts2.0的开发与运行环境 **一、环境准备** 在深入探讨Struts2.0的基本配置之前,首先需要确保开发环境的正确搭建。Struts2.0作为Struts框架的升级版,...
综上所述,徒手配置Struts2虽然可能会遇到不少挑战,但只要按照正确的步骤进行操作,并且细心检查每一步的细节,就能顺利完成配置过程。此外,通过深入理解配置文件的每一个元素,可以帮助开发者更好地掌握Struts2的...
以下是关于Struts2配置JSP以及SSH整合所需的知识点: 1. **Struts2核心库**:Struts2的核心库包括`struts2-core.jar`,这个jar文件包含了框架的基础组件,如Action、Result、Interceptor等。它提供了请求处理、拦截...
- 在浏览器中访问`http://localhost:8080/Struts2Test/hello`,如果一切配置正确,你应该能看到"hello.jsp"页面显示Action返回的结果。 通过以上步骤,你已经在Eclipse中成功配置并运行了Struts2框架。这是一个...
在描述的问题中,开发者尝试将`struts.xml`文件移动到项目中的不同位置,但发现即使指定了新的路径,Struts2也无法正确加载该配置文件。这是因为Struts2框架在启动时,并不直接根据应用程序的根目录来寻找配置文件,...
Struts2是一个流行的Java web应用程序框架,它遵循...正确配置action、结果和拦截器可以使应用程序更易于维护、扩展和调试。通过熟练掌握配置文件的结构和元素,开发者能够更高效地构建基于Struts2的Java web应用程序。
在深入探讨《关于struts2的一些配置》这篇文章之前,我们首先需要理解Struts2框架的基本概念及其在Java Web开发中的重要性。Struts2是一个基于MVC(Model-View-Controller)模式的开源Web应用框架,它简化了Java Web...
配置文件中的版本号(如`struts-2.5.2`)应与实际使用的Struts版本保持一致,以确保正确解析和执行。 在配置过程中,可能会遇到各种问题。例如,日志配置不完整可能导致Tomcat无法启动或运行错误。在这种情况下,...
这些配置选项只是Struts2配置文件中的一部分,实际上还有更多关于动作、拦截器、结果类型、包等的配置。理解并熟练运用这些配置能够使开发者更加灵活地定制Struts2框架的行为,以满足特定项目的需求。在实际应用中,...
Struts2是一个强大的MVC框架,它在设计...正确配置Action不仅可以简化代码结构,还能使应用更易于扩展和调试。同时,通过调整`struts.properties`,可以根据项目需求自定义Struts2的行为,使得框架更好地适应项目需求。
- **其他错误**:检查 struts.xml 和 web.xml 文件是否正确配置,并确保所有必需的库都已正确加载。 #### 五、总结 通过以上步骤,我们成功配置了一个简单的 Struts2.3.3 应用程序。这只是一个基础的示例,在实际...