首页 > 其他分享 >Struts2标签错误:using Struts tags without the associat解决

Struts2标签错误:using Struts tags without the associat解决

时间:2023-08-27 12:03:05浏览次数:39  
标签:web struts tags Struts associat struts2 jsp


<filter-mapping>   
    <filter-name>struts2</filter-name>   
    <url-pattern>*.jsp</url-pattern>   
</filter-mapping>


 

struts,在使用标签的时候,出现了这样一个问题。

     原本使用标签,引用方法是默认配置:

     web.xml:


<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>/*</url-pattern>   
</filter-mapping>


 

由于在使用的web应用中一些特殊应用的关系,web.xml的配置改为:


<taglib>   
  <taglib-uri>struts-tags</taglib-uri>   
  <taglib-location>/WEB-INF/struts2-core-2.0.11.jar</taglib-location>   
 </taglib>   
   
<filter-mapping>   
    <filter-name>struts2</filter-name>   
    <url-pattern>/*.action</url-pattern>   
</filter-mapping>


 

struts标签配置到web.xml文件。  

    但在使用中,直接访问index.jsp,出现异常:

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. - [unknown location]

 

    在struts2中不能直接使用jsp,引用struts2的标签么?是否有解决的方法?

   找到解决方法了,其实只要再加一个过滤设置就可以了:


<filter-mapping>   
    <filter-name>struts2</filter-name>   
    <url-pattern>*.jsp</url-pattern>   
</filter-mapping>   

<filter-mapping>   
    <filter-name>struts2</filter-name>   
    <url-pattern>/struts/*</url-pattern>   
</filter-mapping>


 

标签:web,struts,tags,Struts,associat,struts2,jsp
From: https://blog.51cto.com/u_16237557/7252157

相关文章

  • struts2文件下载
    下载相对上传来说就要简单一点了,主要是使客户端获得服务器端的文件输入流,但是在配置Action时,还是有一些要注意的:1)result的type必须为stream类型 2)attachment表示不管什么类型的文件,都要弹出下载对话框,若不指定,则默认为内联形式,即inline,即浏览器能打开的就直接打开,不能打开的就提......
  • Struts2 中拦截器和Action的调用关系
    所谓的拦截器就是指实现了Interceptor接口的类,该接口中定义了三个方法:init(),destroy(),intercept()。init()用于在服务器启动的时候,初始化这个拦截器。destroy()用于清理分配给拦截器的资源,intercept()是用来起拦截作用的,这个方法还有一个ActionInvocation类型的参数invocation,并且......
  • struts2中的参数传递
    这个问题其实一直很困惑我的,在写平常的jsp程序时,传递参数很容易,通过表单,request,链接等都可以传递,但是到了struts2中,在写的各个地方,都看不到任何的request或是response,不知道该怎么传递参数了,到了今天学习了struts2中的参数传递这一节,终于解开了疑惑,但是还不是很清楚,有待以后探索。......
  • Struts2中防止表单重复提交的两种方式
    防止表单重复提交,这是个很重要的知识点,而且很有用。当用户提交了一个表单,此时,地址栏显示的是处理这个表单的Action的地址,若此时刷新,则会重新发送一次表单数据,即又进行了一次提交,若这个Action是用来处理用户注册的,那么重复提交会再一次向数据库中插入之前已经插入的数据,这显然不是我......
  • struts2模型驱动
    和模型驱动的相对应的是属性驱动,虽然名字叫的挺牛的,其实很好理解。属性驱动就是在Action中,定义的是和表单中对应的一个个属性,然后有属性的get/set方法。而模型驱动就是事先定义了一个模型,即Model,将表单传递过来的数据封装成一个对象后,再传递给Action,这和Struts1的这种机制很相似。......
  • Struts2输入校验以及错误信息处理(2)——用Struts2定义好的校验框架进行校验
    Struts2的输入校验有两种方式:一种是用Action中定义的validate()方法进行校验,一种是用Struts2定义好的校验框架进行校验。前者里面的逻辑判断要自己写,而后者只需要传递相应的参数即可。不管是哪种方式,程序执行的流程都是一样的,执行流程如下:1、对表单传递过来的数据,先进行类型转换......
  • Struts2的自定义类型转换和简单的输入校验
    这里关键是对自定义类型的理解,它和8个基本数据类型的地位是一样的,只不过这个是你自己定义的类型。那么在Struts2中什么时候要用到数据类型转换呢?其实,我们一直在用,只是我们没有感觉到而已,Struts2对8个基本数据类型以及Date、String等常见类型,会自动的用内建的类型转换器进行转换,这个......
  • Struts2输入校验以及错误信息处理(1)——用Action中定义的validate()方法进行校验
    Struts2的输入校验有两种方式:一种是用Action中定义的validate()方法进行校验,一种是用Struts2定义好的校验框架进行校验。前者里面的逻辑判断要自己写,而后者只需要传递相应的参数即可。不管是哪种方式,程序执行的流程都是一样的,执行流程如下:1、对表单传递过来的数据,先进行类型转换2、......
  • struts2文件上传
    上传文件其实分为两个步骤:首先,将客户端传递过来的文件保存到struts.multipart.saveDir键所指定的目录下,如果没有指定,那么就保存到javax.servlet.context.tempdir环境变量所指定的目录下,然后,Action中所定义的成员变量file,实际指向的是临时目录中的临时文件,在服务器通过IO的方式,将临......
  • struts2异常处理
    Struts2中的异常处理有两种形式:一种是局部异常处理,一种是全局异常处理在struts.xml中的package下有两个这样的标签:<global-exception-mappings>和<global-results>,前者指定异常处理的类,后者是异常处理结果,通常指定一个显示异常信息的页面。而在action中,也有类似全局的异常处理,<exce......