读书人

java.lang.ClassNotFoundException: o

发布时间: 2012-12-15 15:16:03 作者: rapoo

java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.Struts
严重: Exception starting filter struts2
java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1666)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1511)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:406)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:388)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:117)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:248)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:368)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:98)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4193)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4801)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:988)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:771)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:988)
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:275)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:427)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:649)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
at org.apache.catalina.startup.Catalina.start(Catalina.java:585)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415)
我用的是strut2.3.3,导入的包有:
commons-fileupload-1.2.2.jar
commons-io-2.0.1.jar
commons-lang-2.5.jar
freemarker-2.3.16.jar
ognl-3.0.1.jar
struts2-core-2.2.3.jar
xwork-core-2.2.3.jar
javassist-3.11.0.GA.jar

struts.xml放在src目录下,代码如下:


<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
<constant name="struts.devMode" value="true" />
<package name="default" namespace="/" extends="struts-default">
<action name="hello" >
<result>/index.jsp</result>
</action>
</package>
</struts>



web.xml放在WEB-INF下,代码如下:



<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>

<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


</web-app>


而且我每次Eclipse保存这个XML文件的时候Eclipse就会卡住
请各位大大帮帮我啊…Google了三、四个小时都没有找到解决方案T_T

[解决办法]
只能用struts2-core-2.2.3.jar这个jar?

[解决办法]
如果允许,你可以换个struts的jar试试。
[解决办法]
根据错误信息应该是缺少过滤器所对应的JAR包
[解决办法]
说是包木有找到,是JAR包的问题
[解决办法]
我找过了,在core包里是有org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter这个类的…我之前建过一个工程,没有这个问题…可是昨天不知道为什么就有这个问题了,而且一直搞不定…
[解决办法]
按理说用struts2-core-2.2.3.jar这个jar是没有问题的。


[解决办法]
检查你项目的classes path。
[解决办法]
查看下自己的build path
[解决办法]
commons-digester-1.8.jar 是不是这个包?
要不你重新建个项目,搭好框架 部署后,把tomcat下边的包全拉这个项目里边 就不会报错了!
[解决办法]
o,今天也碰到了,蛋疼啊!求解决!
[解决办法]
遇到了,搞不定,网上查了说是jar冲突,可是换jar版本还是不行 求解决
[解决办法]
同遇到这种问题
[解决办法]
查看你的web.xml<filter-class></filter-class>中的包名是否写对了。
[解决办法]
遇到同样的问题
[解决办法]
遇到同样的问题。这是怎麽回事啊。web.xml配置对了,5个经典的jar也引入进去了。但是还是不行。。。。怎麽回事啊!
[解决办法]
同样的问题,求解释,struts2出问题了?

[解决办法]
我知道怎么解决了,我的已经解决了,分享一下!
,是这样做的,因该是你的web.xml 的
<filter-class>路径</filter-class>配置的不正确.具体办法:找到你的(找你的对应版本,我的是2.0.14)
找到
struts-2.0.14-all\struts-2.0.14\apps下的struts2-blank-2.0.14.war问文件,解压,找到里面的\struts2-blank-2.0.14\WEB-INF\web.xml 把里面的<filter-class>********</filter-class>复制出来,粘贴到你的项目就可以了.
[解决办法]
话说是不兼容的问题
[解决办法]
[b]经过我不懈的测试,最后终于搞定问题了,我使用的是Struts 2.1.8.1,java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter


类找不到的原因是Tomcat启动的问题,原因在于Tomcat安装路径包含空格,楼主重装一下Tomcat,安在C盘根路径下就OK了....

为人类软件开发做贡献....[/b]
[解决办法]
一开始我也没发现自己的路径不对,和\struts2-blank-2.0.14\WEB-INF\web.xml的一样,但是就是不正确,复制出来人家的,替换自己的,就对了.呵呵
[解决办法]
大家用的myeclipse吗?我用myeclipse自带的struts2,导入后也出现这问题
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter这个也找到了。
[解决办法]
我今天在部署一个简单的web的项目的时候也遇到了同样的异常,开始以为是jar包路径的问题,后来检查了一下,不是路径的问题,也不是jar包版本的问题,在把需要的jar包部署到web项目中的时候,一定要把所有的jar包copy到lib目录下,然后在重新部署到项目中,具体步骤是 1 copy jar包至lib目录 2 右键点击lib buildpath add jars 3 选中所需jar包部署到项目中 重新启动tomcat5.5 异常解除!!切忌不要把需要的jar包放到别的盘符下直接部署到项目中,这样会抛上述异常!!!
[解决办法]
我复制过去还是不行
[解决办法]
应该是struts-2.3.dtd吧?

读书人网 >J2EE开发

热点推荐