`

struts2中配置servlet

 
阅读更多
转载 在Struts2中使用servlet 配置问题

在做WEB项目时,要么是Struts+Spring+Hibernate, 要是就直接使用servlet。这次碰到一个项目,经理想要把之前一个用servlet做的部分模块移植到当前项目下(Struts+Spring),这 时发现Struts2.X(Struts1.X没试过不知道行不行)不能和servlet同时使用,主要是由于页面的请求都被struts给拦截了,根本 访问不了servlet,发现这个原因后本人是先直接在struts的配置文件中加上

<constant name="struts.action.extension" value="do,action"/> (请求的后缀要有.do或.action才到struts配置文件里找对应的action),运行站点,可以工作了。

        没想到刚过两天,在测试上传功能时又出错了(该上传功能也是 从原先的项目移植过来的),找不到上传的文件,这到是奇了怪了,仔细看了下log,发现在执行请求的servlet前还是经过了struts的过滤链,这 时我想可能是struts的文件过滤那块把文件给绑定到某个地方(好像使用struts2上传文件就是这么回事:通过文件拦截器 ,将文件绑定到action中的对应属性),而当servlet去获取request中的文件二进制流时,将找不到文件,导致上传的文件为空,造成后续的 操作失败。至此只能在web.xml关于struts2的拦截链的配置修改了,原本配置如下:

<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>

将其改为:

<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;*.do;...</url-pattern>(过滤不同的后缀,要分开写 ,在此为方便写在一起)
  </filter-mapping>

至此struts和servlet可以一起运行啦
分享到:
评论

相关推荐

    Struts2中Servlet的配置

    Struts2和Servlet 1、在struts2的action中可以通过实现ServletResponseAware/ServletResquestAware接口 (org.apache.struts2.inteceptor.ServletResponseAware/ServletResquestAware)直接访问 HttpServletResponse/...

    struts2配置详解

    Struts2 中的验证逻辑编写在 Action 中. 4、Struts1 中, Action 类必须继承 org.apache.struts.action.Action 类; Struts2 中任何一个 POJO 都可以是一个 Action 类. 5、Struts2 在页面里使用 OGNL 来显示各种对象...

    eclipse for javaee配置web开发环境(struts2+servlet+sping)字体.doc

    eclipse for javaee配置web开发环境(struts2+servlet+sping)字体.doc 让你快速学会在eclipse for javaee里开发javaweb项目

    解决struts2配置为/*之后 servlet不能使用的问题

    解决struts2配置为/*之后 servlet不能使用的问题

    03解决struts2配置文件无提示问题

    Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着太大的变化,...

    Struts课堂笔记.rar--struts2的struts.properties配置文件详解

    是否struts过滤器中提供的静态内容应该被浏览器缓存在头部属性中 struts.serve.static Whether the Struts filter should serve static content or not 是否struts过滤器应该提供静态内容 struts.tag....

    javaWeb_struts2框架实现简单用户注册登录

    3.控制器采用action开发,替代传统的servlet,直接跳转页面返回一个字符串即可,需配置struts.xml对应的jsp。 4.struts2,可以直接对表单提交的数据封装成对象,简洁!当然需要在web.xml中配置核心filter—...

    xdoclet1 xdoclet1 spring3.0.5、struts1.3、struts2.1、 servlet

    其中包括xdoclet2与hibernate3.6的整合xdoclet1.2.3分别与spring3.0.5、struts1.3、struts2.1、 servlet的整合配置。其中还有相应的.xdt文件模板,其中struts2.1.xdt为自己写的。 需要xdoclet1.2.3 ...

    struts2总结第一章

    Struts2第一章 一、 介绍: a) Struts2是以web work优秀的设计思想为核心,吸收了struts1的部分优点,建立了一个基于...a) 在项目中导入Struts2必需的jar包。 b) 修改web.xml配置文件。 c) 添加struts.xml配置文件。

    根据所学习的Struts 2的相关知识,设计Struts2框架下的登录功能

    2. 建立一个Web Project(命名为struts_exam1),并添加Struts 2 的相关jar 包; 3. 编写登录页面(login.jsp)、登录成功(login_success.jsp)和登录失败页面(login_fail.jsp); 4. 编写Ation实现类,实现execute()...

    Struts2教程

    由于 Struts 的入口点是 ActionServlet ,所以得在 web.xml 中配置一下这 个 Servlet 。 2. 编写 Action 类(一般从 org.apache.struts.action.Action 类继承)。 3. 编写 ActionForm 类(一般从 org.apache.struts....

    Struts2入门教程(全新完整版)

    1.概述strust2中的拦截器 28 2.自定义拦截器 28 方式一,实现Interceptor接口。 28 方式二、继承AbstractInterceptor抽象类 29 方式三、继承MethodFilterInteceptor类 30 3.使用来MethodFilterInterceptor灵活拦截 ...

    struts2的总结,适合初学者

    Struts2就是从servlet中封装以后得到的结果。 1.2Servlet的缺点 1、每写一个servlet在web.xml中都要做相应的配置。如果有多很servlet,会 导致web.xml内容过于繁多。 2、这样的结构不利于分组开发。 3、在servlet中...

    struts1和struts2的区别

    struts1的配置比struts2麻烦很多。不仅要在.xml里写繁多的配置,多数也还要写一个FormBean来和action对应。struts2配置简单。不用继续servlet,任何一个带有方法的类都能当作action来使用。

    JSP Struts配置文件详解

    描述:用于配置ActionServlet 数量:最多一个 属性: @bufferSize:指定上传文件的输入缓冲的大小.默认为4096 @className:指定当前控制器的配置类.默认为org.apache.struts.config.ControllerConfig @...

    Struts2属性文件详解

    该属性指定加载Struts 2配置文件的配置文件管理器.该属性的默认值是org.apache.Struts2.config.DefaultConfiguration, 这是Struts 2默认的配置文件管理器.如果需要实现自己的配置管理器,开发者则可以实现一个实现...

    servlet与Struts action线程安全问题分析

    servlet与Struts action线程安全问题分析

    struts2+spring2+ibates

    2、在sping配置中注意单元测试里,xml文件的路径问题,要用绝对路径。 3、struts.xml中命名空间和拦截器的使用。 4、sqlmapconfig.xml中传入参数和result的设置,只需要将得到的值result映射到有此属性的类对象. 5、...

    struts2讲义_吴峻申

    4.3 在Struts2中配置自定义的拦截器 53 4.3.1 扩展拦截器接口的自定义拦截器配置 54 4.3.2 继承抽象拦截器的自定义拦截器配置 56 4.3.3 继承方法拦截器的自定义拦截器配置 58 4.4 Struts2文件上传拦截器应用 61 ...

    Struts2执行流程

    Struts2执行流程 1. web.xml 部署描述符 2. FilterDispatcher 实现StrutsStatics, Filter接口 (1)Filter:一个filter是一个对象用于执行过滤任务为每个请求资源(一个servlet或静态内容),或响应一个资源,或两者.过滤...

Global site tag (gtag.js) - Google Analytics