首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

struts学习错误信息

2012-09-10 
struts学习异常信息ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndE

struts学习异常信息
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.(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)




首先检查struts包是否导入,具体包如下:


然后检查web.xml文件是否写对:


如果都配置正常仍有上述错误提示,那么可能就是tomcat服务器的classpath中为加入包导致,主要原因是tomcat不会会把eclipse项目直接部署到这个目录下的webapps\目录下,同时项目所用到的jar包会在tomcat启动的时候以classpath的形式导入,而不是直接把这些jar包导入到WEB-INF\lib下。这就是问题所在,我们可以到tomcat的启动配置界面里面去看一下classpath,里面没有添加struts2相关包,我们需要将这几个包手动添加到classpath中,同时,还要添加servlet-api.jar和jsp-api.jar两个包。注意,要将这两个包移动至struts2包前面,因为struts2中的类要用到这两个包。




特别注意:在修改classpath的时候将tomcat服务器关闭,然后手动添加servlet-api.jar、jsp-api.jar、struts2的那几个包,具体操作如下:

点击菜单中的【Run】,然后选择【Run Configurations】显示如下图:



手动添加完成之后,点击【Apply】,然后点击【Run】

快去看看你的启动结果吧!哈哈!


热点排行