异常信息:The Struts dispatcher cannot be found.  This is usually caused by using Struts tags without the associated filter. Struts tags are only usable when the request has passed through its servlet filter, which initializes the Struts dispatcher needed for this tag.

环境:tomcat5.5.0

struts.xml信息

<?xml version="1.0" encoding="UTF-8"?> 
<web-app version="2.4"  
    xmlns="http://java.sun.com/xml/ns/j2ee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> 
  <filter> 
    <filter-name>struts2</filter-name> 
    <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> 
  </filter> 
  <filter-mapping> 
    <filter-name>struts2</filter-name> 
    <url-pattern>*.action</url-pattern> 
  </filter-mapping> 
  <welcome-file-list> 
    <welcome-file>index.jsp</welcome-file> 
  </welcome-file-list> 
</web-app> 
         struts.xml 信息:

<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> 
<struts> 
  <include file="struts-default.xml"/> 
  <package name="ygn.action" extends="struts-default"> 
    <action name="HelloWorld" class="ygn.action.HelloWorld"> 
      <result>HelloWorld.jsp</result> 
    </action> 
  </package> 
</struts> 
       SayHello.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"  pageEncoding="UTF-8"%> 
<%@ taglib prefix="s" uri="/struts-tags" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title>Say Hello</title> 
</head> 
<body> 
  <h3>Say "Hello" to :</h3> 
  <s:form action="HelloWorld"> 
    Name:<s:textfield name="name"/> 
    <s:submit/> 
  </s:form> 
</body> 
</html>

异常分析:以上的配置及文件中,如果采用http://ip:port/SayHello.jsp,那么会出现前面所提到的异常。如果采用http://ip:port/SayHello.action 进行访问,那么正常。

原因:如果想要在jsp文件中,采用 struts的tag,那么必须通过web.xml所配置的过滤器访问文件,否则会有异常,即 之前所出现的异常。

解决方案:

方案一:

采用 http://ip:port/SayHello.action 访问

方案二:

将web.xml 的过滤器,从 *.action 修改为: /*

方案三:

修改SayHello.jsp 文件,不使用 struts 的标签。

转载于:https://blog.51cto.com/javaqun/1704850

struts的异常处理相关推荐

  1. Struts 2常见应用

    学习内容 Struts 2国际化 Struts 2的异常处理 Struts 2的文件上传与下载 能力目标 熟练使用Struts 2实现国际化 能通过Struts 2的异常处理增强WEB应用的健壮性 使 ...

  2. Struts 1高级应用

    在线课堂:https://edu.csdn.net/lecturer/1516  学习内容 DispatchAction 类型转换器 Struts 1异常处理 能力目标 能熟练使用DispatchAc ...

  3. SSH-struts2的异常处理

    在学习j2se的时候学习过利用java的exception类去处理异常.在struts2框架中也提供了对于异常的处理.简单说就是当Action发生异常时.能够在struts2.xml文件里进行配置,将 ...

  4. Struts 2 的Action详解(三)

    5 指定Action的处理结果 Action只负责用户请求的处理,只是一个控制器,不能直接对用户的请求作出响应.当Action处理完请求后,处理结果应通过视图资源实现,但控制器应控制将哪个视图资源呈现 ...

  5. Struts MVC 框架 (让你一步步成为高手)

    web应用的分层 交互层,表现数据,收集数据,也就是视图层,接受请求,通过处理层完成相应的响应.(V,C) 处理层,完成数据的处理,也就是业务层(M). MVC设计模式(应用观察者模式的框架模式) M ...

  6. Struts2学习入门

    Struts 2 教程 Apache的Struts2是一个优雅的,可扩展的框架,用于创建企业准备的Java Web应用程序.该框架旨在简化整个开发周期,从构建,部署,维护应用程序随着时间的推移. Ap ...

  7. java filter 返回错误消息_利用java filter 实现业务异常拦截 跳转到错误信息提示页面...

    1.缘由:我们在做项目中肯定都会遇到自定义业务异常 ,然后将业务异常信息跳转的统一的信息提示页面的情况,比如我们在struts的时候我们会用到struts的异常处理机制,我们在业务层会跑出我们遇到业务 ...

  8. Struts2知识点总结大全

    Struts MVC框架 Web应用的分层 交互层(Interaction Layer),表现数据,收集数据,也就是视图层,接受请求,通过处理层完成相应的响应.(V,C) 处理层(Processing ...

  9. strtus1 html5,struts1.x的入门级学习教程

    在培训是辅导给我们将的一个struts1的串讲,最近在修改一个项目,在系统项目中使用的是struts1.3,俗话说"临阵磨枪,不快也光"吗?现在给自己一个时间来再次回顾一下. 一. ...

最新文章

  1. 让Ubuntu自动登录到X
  2. 操作笔记:tomcat在正式环境的常见问题和idea的远程调试
  3. 东京理科大学 计算机系,东京理科大学
  4. 主成分分析(PCA)matlab代码实现
  5. 微信公众平台开发者原理图解
  6. java模拟内存溢出并分析_模拟内存溢出通过MAT分析
  7. 类的应用python平均分_【数据科学系统学习】Python # 数据分析基本操作[四] 数据规整化和数据聚合与分组运算...
  8. 《Java开发实战经典》PDF+随书视频
  9. 代码检查工具--findBugs
  10. html页面加载蒙版,HTML / CSS - 在图像上创建alpha蒙版
  11. activity劫持学习与复现
  12. matlab 读取midi,matlab miditoolbox中的midi文件生成函数的改进
  13. 英特尔vPro博锐技术激活
  14. LabVIEW2021测量和绘制滤波器的Nyquist曲线。
  15. 运营︱快速提高app日活的方法
  16. 手机如何实现边有线上网边充电?
  17. java连接oracle报错ora-12505,Oracle SQL Developer连接报错(ORA-12505)的解决方案(两种)
  18. 《白帽子讲Web安全》世界观安全
  19. 结构体中使用冒号对位的操作
  20. 任正非告别荣耀讲话—-陌生的感动

热门文章

  1. java评论回复功能例子_Java实现评论回复功能的完整步骤
  2. 手机有一个时钟的标志_手机桌面时钟有这几款就够了
  3. php 的超全局数组,PHP超全局数组(Superglobals)介绍
  4. fortran调用matlab画图,[转载]Matlab与Fortran的交互--基本概念
  5. 使用OpenSSL生成私钥(Private Key)以及根据Private Key创建证书
  6. OpenCV学习笔记04:在Visual Studio上使用OpenCV4.5.5
  7. 《趣学算法 [陈小玉]》学习笔记01
  8. 《天天数学》连载14:一月十四日
  9. 【BZOJ1179】atm,tarjan缩点+最长路径
  10. 二叉树C++ | 广度优先遍历(层级顺序遍历)_2