关于Struts2找不到org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter解决方案和struts2.5的基础环境

如果您使用的是struts2版本2.5,则需要从org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter更改为org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter

在我的struts2-core-2.3.15.3.jar包中,可以看到是存在org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter 
关于Struts2找不到org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter解决方案和struts2.5的基础环境

在web.xml中配置也是能看到没有问题。 
关于Struts2找不到org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter解决方案和struts2.5的基础环境
所以在struts2.3这个版本中是完全没有问题的。不存在找不到的情况。

但在2.5版本呢?

我的struts2-core.jar包中(我截了struts.xml的图可已看出是2.5的哈)。 
关于Struts2找不到org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter解决方案和struts2.5的基础环境 
可以从struts2-core.jar这jar包中看到:org.apache.struts2.dispatcher下根本就没有ng的存在,即org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter是不存在的。而可以看到StrutsPrepareAndExecuteFilter在org.apache.struts2.dispatcher.filter下。

关于Struts2找不到org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter解决方案和struts2.5的基础环境 
如果还是org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter这样配置,那么可以看到在web.xml中变成了红色,表示找不到。 
关于Struts2找不到org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter解决方案和struts2.5的基础环境

注意:官方给的最小struts2.5 jar包: 
关于Struts2找不到org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter解决方案和struts2.5的基础环境