当前位置:  软件>java软件

struts2下载取消异常 StreamResultX

    来源:    发布时间:2014-12-14

    本文导语:  StreamResultX 1.2 兼容性 兼容struts2-sunspoter-stream-1.0.jar版本 JDK最低版本1.6 Maven cc.fozone.struts2 StreamResultX 1.2 使用建议 在1.2版本中,建议使用cc.fozone.struts2.StreamResultX方式,更为简单。 使用场...

StreamResultX 1.2 兼容性
  • 兼容struts2-sunspoter-stream-1.0.jar版本
  • JDK最低版本1.6
  • Maven
        cc.fozone.struts2
        StreamResultX
        1.2
    
    使用建议

    在1.2版本中,建议使用cc.fozone.struts2.StreamResultX方式,更为简单。

      
          
    
    使用场景

    Struts2环境下,通过Struts2提供的下载方式进行下载时出现的java.lang.IllegalStateException异常

    2011-1-820:34:20 org.apache.catalina.core.StandardWrapperValve invoke  
    严重: Servlet.service() for servlet default threw exception  
    java.lang.IllegalStateException  
    at org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:407)  
    at javax.servlet.http.HttpServletResponseWrapper.sendError(HttpServletResponseWrapper.java:108)  
    at com.opensymphony.module.sitemesh.filter.PageResponseWrapper.sendError(PageResponseWrapper.java:176)  
    at javax.servlet.http.HttpServletResponseWrapper.sendError(HttpServletResponseWrapper.java:108)  
    at org.apache.struts2.dispatcher.Dispatcher.sendError(Dispatcher.java:770)  
    at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:505)  
    at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)  
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)  
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)  
    at com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129)  
    at com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77)  
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)  
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)  
    at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:102)  
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)  
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)  
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)  
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)  
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)  
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)  
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)  
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)  
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)  
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)  
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)  
    at java.lang.Thread.run(Thread.java:662)
    解决方案
  • 将StreamResultX-1.2.jar,并复制在/WEB-INF/lib下
  • 在原有的struts.xml的基础上进行相应的配置,配置如下例
  • 配置如下

      
      
      
          
      
    
      
                       
          
            download  
            4096  
            filename=""  
            UTF-8  
          
    
    重点概述
  • 在这种方式下,只需添加一个result-type;
  • 将原有的result中type改为“streamx”,其他一律不变;
  • 在这种情况下,点击“取消”的同时也关闭了流,不会再报出该异常。
  • 之后的执行“取消”后的结果如下:(配置了“log4j.properties”才能看到该结果)
  • 21:23:44,676 WARN StreamResult:45 - StreamResultX Warn : socket write error

    如果出现该警告说明正确执行,该警告说明,Socket非正常中断,但是流确实已经关闭,自此再也不用看到上面出现的讨厌异常结果。

    1.0/1.1版本 到 1.2版本切换建议配置

    将1.0/1.1中的class

    
    

    指向修改如下:

    
    

        
     
     

    您可能感兴趣的文章:

     
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Struts2的插件 LightURL
  • 后台快速开发框架 struts2-mvc-template
  • Struts2GWTPlugin
  • Struts2Builder
  • struts2-remote-template-plugin
  • Struts2增强版 Struts+
  • Struts2 AjaxFileUpload
  • NetBeans的Struts2插件
  • Struts2 jQuery Plugin
  • Struts验证码插件 JCaptcha4Struts2
  • NetBeans的Struts2插件 iis7站长之家
  • struts2 spring整合fieldError问题
  • struts2调试插件 ConfigDebug
  • Jquery、Ajax、Struts2定时刷新功能的实现代码
  • Jquery、Ajax、Struts2完成定时刷新的方法
  • 在Struts2中如何将父类属性序列化为JSON格式的解决方法
  • java Struts2 在拦截器里的跳转问题
  • struts2+spring+hibernate分页代码[比较多]第1/7页
  • struts2+jquery实现ajax登陆实例详解
  • Struts2访问servlet分享


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3