Struts 2 学习笔记0:启动项目报错

/ 0评 / 1

跟着网上的教程配置的struts项目如果启动时出现下面的报错:

java.lang.ClassNotFoundException: org.apache.Struts2.dispatcher.FilterDispatcher

有可能是因为配置文件没有写对

老版本的struts教程这个包名叫org.apache.struts2.dispatcher.FilterDispatcher,2.3之后的版本叫org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter,而到了2.5版本又改成了org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter

下面是2.3版本的一个配置示例

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <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>

filter-class那一项就是包名

所以跟教程做还是严格按教程的版本来吧,不然会遇到各种奇奇怪怪的问题。

发表评论

电子邮件地址不会被公开。 必填项已用*标注