java - struts2找不到类文件
高洛峰
高洛峰 2017-04-18 10:51:11
0
3
748

刚学到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,看看是否有拼写错误或其它小问题,可是我观察了好久,没有看到出错的地方。
以下是我的页面出错情况、项目文件,以及配置情况:



希望路过的大佬能指教下,小弟感激不尽...

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全員に返信(3)
左手右手慢动作

問題は解決されました。
1. 指定されたページが見つかりません
java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
解決策は次のとおりです: <filter-class>org.apache.struts2.dispatcher.ng。 filter .StrutsPrepareAndExecuteFilter</filter-class>
のクラスパスが org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter

に変更されます。

2. 変更後にその他の問題が発生しました: tomcat が正常に起動できず、多くのエラーが報告されました。
解決策: 別の jar パッケージを追加します: log4j-api-2.7.jar

この時点で、Tomcat は正常に起動し、struts2 もオブジェクトを正確にインターセプトでき、ページは正常に表示されます。

いいねを押す +0
伊谢尔伦

プロジェクトのビルドパスに追加したパッケージが含まれているかどうかを確認します。

いいねを押す +0
PHPzhong

パッケージをクラスパスにインポートしていません

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!