刚学到struts2这块,按照书上的代码观察struts2的action的运行情况,然后也是按照书上的步骤,先是导入包,然后配置web.xml和在src文件夹中配置一个struts.xml,最后编写一个index.jsp和first.jsp,然而在运行时候出了错误,报错情况为:
严重: Exception starting filter struts2
java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1892)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1735)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:504)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:486)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:113)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:105)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4958)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5652)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1571)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1561)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
尝试解决过程:
网上查找过问题,有的答案说是有可能是包重复了?然后我根据这种做法重新导入了jar包,可是依然报错,然后还有的解决方案是说看下struts.xml和web.xml,看看是否有拼写错误或其它小问题,可是我观察了好久,没有看到出错的地方。
以下是我的页面出错情况、项目文件,以及配置情况:
希望路过的大佬能指教下,小弟感激不尽...
Masalah telah selesai.
1. Halaman yang dinyatakan tidak dapat ditemui
java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
Penyelesaian ialah: <filter-class>org.apache. struts2 Laluan kelas dalam .dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
ditukar kepada: org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
2. Masalah lain berlaku selepas perubahan: tomcat tidak dapat bermula seperti biasa dan melaporkan banyak ralat.
Penyelesaian: Tambah pakej balang lain: log4j-api-2.7.jar
Pada ketika ini, tomcat bermula seperti biasa, struts2 juga boleh memintas objek dengan tepat, dan halaman dipaparkan secara normal.
Semak sama ada laluan binaan projek mengandungi pakej yang anda tambahkan.
Anda tidak mengimport pakej ke dalam classpath