struts2访问JSP页面404的问题

  1. action标签中class属性对应类不存在,原因可能是手误写错,或者还没开始写action就配置了struts.xml
    在这里插入图片描述
  • 运行结果
    在这里插入图片描述
    报错原因是web.xml中的过滤器过滤了所有请求。在创建Dispatcher,会读取 filterConfig 中的配置信息,将配置信息解析出来,封装成为一个Map,然后根绝servlet上下文和参数Map构造Dispatcher 。Dispatcher初始化,加载struts2的相关配置文件,将按照顺序逐一加载:default.properties,struts-default.xml,struts-plugin.xml,struts.xml。但是到核心配置文件的时候:
    在这里插入图片描述
    Dispatcher是struts2重要的类之一,这个类初始化失败,核心过滤器就很难正常工作,而jsp会被过滤掉,但因为该类初始化失败的缘故,jsp页面虽然被过滤但是转发不回来,所以404。
  • 解决办法:
    • class属性设置为空
    • 映射存在的类,不管实现具体方法没有,只要有类就可以
    • 将web.xml中的url-pattern改掉,让它不要过滤jsp
  1. 第三种解决方案不推荐,/*是struts的合理配置,让其过滤掉jsp,是又struts框架的具体考量的。
发布了84 篇原创文章 · 获赞 90 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/weixin_42512488/article/details/90211545
今日推荐