zoukankan      html  css  js  c++  java
  • The Struts dispatcher cannot be found. This is usually caused by using Struts tags without the associated filter. 异常

    异常信息: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.

    环境:tomcat 6.0  struts2.21

    web.xml的配置:

      <filter>
          <filter-name>struts2</filter-name>
          <filter-class>
              org.apache.struts2.dispatcher.ng.filter.StrutsPrepar                  eAndExecuteFilter
          </filter-class>
      </filter> 
      <filter-mapping>
          <filter-name>struts2</filter-name>
          <url-pattern>*.action</url-pattern>
      </filter-mapping>

    默认是进行.action的过滤,以前都是使用freemarker作为显示端的,没出错,现在用jsp来显示点东西却出现了这个错误
    Test.jsp:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@taglib prefix="s" uri="/struts-tags" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>测试</title>
    </head>
        <body>
            <s:form action = "testAction.action">
                <s:textfield name = "stuMap['one'].stuNum" label = "第一个用户名"/>
                <s:password name = "stuMap['one'].password" label = "第一个密码"></s:password>
                <s:textfield name = "stuMap['two'].stuNum" label = "第二个用户名"/>
                <s:password name = "stuMap['two'].password" label = "第二个密码"></s:password>
                <s:submit name = "send" value = "提交" theme = "simple"></s:submit>
            </s:form>
        </body>
    </html>

    struts2的标签已经引入了,查询后归纳了以下几种方法:
    1.将web.xml下的struts2过滤器的过滤方式从.action改为/*;   不过这种方式自己感觉不太好,应该这样默认就将所有的进行了过滤,可能会对有些应用带来麻烦,例如

    fck的配置

    2. 修改Test.jsp 文件,不使用 struts 的标签

    3.就是在web.xml配置文件中再添加一个filter:

    <filter-mapping>
          <filter-name>struts2</filter-name>
          <url-pattern>*.jsp</url-pattern>
      </filter-mapping>
      <filter-mapping>
          <filter-name>struts2</filter-name>
          <url-pattern>*.action</url-pattern>
      </filter-mapping>
  • 相关阅读:
    Go语言的性能测试对比
    学习笔记
    使用TCPDump分析Redis的Pipeline比Multi更快的原因
    基于Redis/Memcached的高并发秒杀设计
    这些 .Net and Core 相关的开源项目,你都知道吗?(持续更新中...)
    《.Net 的冰与火之歌》寄雁传书,你必须知道的C#参数知识大盘点
    分享自己的超轻量级高性能ORM数据访问框架Deft
    Expression2Sql的一些语法更新
    介绍一个可以将Expression表达式树解析成Transact-SQL的项目Expression2Sql
    记一次随机字符串生成算法的随机概率与性能的提升
  • 原文地址:https://www.cnblogs.com/shenliang123/p/2569958.html
Copyright © 2011-2022 走看看