struts2报错,求高人,!!!!!!!!!

我的一个项目中用了struts2,开发环境中运行没错,但是发布到空间中去,只要加了页面验证的地方都会报错,我在网上搜了一下,都说是xwork.jar 的问题是个bug,我用的是x-work-2.0.7.jar但我换了几个版本的jar包都不行阿,求高人指导

页面报错
javax.servlet.ServletException: Could not initialize class com.opensymphony.xwork2.validator.ActionValidatorManagerFactory

根据你的Struts版本找到对应的 xwork-core-XXX的jar包。

在Struts发行包的lib下有。

Struts2.1.8 --> xwork-core-2.1.6.jar

Struts2.1.6 --> xwork-core-2.1.2.jar

struts2 版本依赖的xwork版本是确定的,也随着struts2的发布包里有的,

你可能是版本不对导致

可能是版本不对,部署后找不到相应的类文件

[b]
你的Struts2是什么版本的? 在Apache官网下载该 Struts2的发行包,然后再lib目录中,找到xwork的jar包。

换上试试,不行的话,从Xwork的官网下载对应版本的xwork的jar包[/b]

[b]目前最稳定的是 2.1.8的版本[/b]

有bug也不至少出这种bug吧

每个版本 的依赖是确定的,不要随便升级版本,搞不好把没问题的整出问题了

xwork-2.0.7.jar

struts2-core-2.0.14.jar

ognl-2.6.11.jar

commons-logging-1.0.4.jar

freemarker-2.3.8.jar
这样的版本是正确的,

可能是由别的因素导致吧

我这里有2.1.8版本的Jar包,你要是想试一下,我发给你,你用到了struts2的验证了吗,如果用了,需要加上commons-validator.jar这个包

我觉得 是你 在开发环境中用到的jar 可能和你 放到 空间上时 jar不一致。。

应该不是Jar包的问题,不要急,把原来的Jar包换回来,错误很明显是因为com.opensymphony.xwork2.validator.ActionValidatorManagerFactory这个类加载的时候没有找到,你把这个类换成这个com.opensymphony.xwork2.validator.ActionValidatorManager再试一下,

本地行 发布不行
包的版本不要换了。估计是类引用问题。。

xwork-2.0.4.jar
struts2-core-2.0.11.jar
ognl-2.6.11.jar
freemarker-2.3.8.jar

我项目的版本

我感觉你的配置有问题,具体详解配置,你参考一下这篇文章:
http://www.phome.asia/forum/thread/15590.html

把相关的配置文件的内容贴出来看看,这么多讨论Jar的问题都没有帮你解决,应该不是Jar包的问题了。。。错误升级到代码级别了吧。。。

首先,你在你本地环境可以运行,在空间上面运行不了,
你JAR包应该是没有问题的, (除非你用得JAR包和你上传的不一样,webwork最好还是用struts2里面自带的,LIB包里面就有, 2.1.8里面是2.1.6)

最好用较高版本的啊

如果你用的是tomcat,请换到更高版本。。

有可能是冲突问题,jar包冲突,有的服务器和struct的包冲突,我猜测是类加载时出的问题。

你那几个包最好都用 一个版本的。。。要不兼容又问题。。

贴出来别的配置看看,没准就是其它地方也说不定呢!

贴出来别的配置看看,没准就是其它地方也说不定呢!

换个xwork-core-2.1.6试试,我的是这个版本,没问题

楼主看看Tomcat的路径是否存在空格 。

看一下你的配置xml文件