使用jspSmartUpload的下载文件的经验教训

js|下载

  昨天晚上用jspSmartUpload下载文件,写了一个下载的页面(Download.jsp)如下:

<%@ page contentType="text/html;charset=gb2312" %>
 <html>
<%@ page import="java.io.*,mail.util.Encoding" %>
<jsp:useBean id="mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload" />
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<%
  String filename =Encoding.encodingUnicode(request.getParameter("filename"));
  mail.DbBase dbbase=mail.DbBase.getInstance();
  String path=dbbase.getPath();
  // 初始化
  mySmartUpload.initialize(pageContext);
  // 设定contentDisposition为null以禁止浏览器自动打开文件,
  //保证点击链接后是下载文件。若不设定,则下载的文件扩展名为
  //doc时,浏览器将自动用word打开它。扩展名为pdf时,
  //浏览器将用acrobat打开。
  mySmartUpload.setContentDisposition(null);
  // 下载文件
  if(filename!=null){
    mySmartUpload.downloadFile(path+filename);
  }
%>
</body>
</html>

  执行下载时,文件能正确下载,但是总是报错。

java.lang.IllegalStateException: getOutputStream() has already been called for this response

  后来还才发现,执行下载的页面,在Java脚本范围外(即<% ...%>之外),不要包含HTML代码、空格、回车或换行等字符,有的话将不能正确下载。不信的话,可以在上述源码中%><%之间加入一个换行符,再下载一下,保证出错。因为它影响了返回给浏览器的数据流,导致解析出错。

  修改后问题解决。

时间: 2024-11-08 22:06:04

使用jspSmartUpload的下载文件的经验教训的相关文章

Windows 7 RC的安装经验教训

这里笔者想要整理.分享一下Windows 7安装经验教训,希望对大家有所帮助. 下载:Windows 7 Release Candidate(RC) http://www.mininova.org/tor/2560296 一 .选择好安装方法 现在您已经下载了ISO映像,并刻录到DVD.接下来你有两个选择去运行安装程序.Windows安装程序性能的不同取决于你选择哪一种方式. 如果您的系统已经安装的是Windows XP,Vista,或更早期的版本,可以从Windows操作系统启动安装程序.或者

2013年四起数据泄露事故的经验教训

本文讲的是2013年四起数据泄露事故的经验教训,从很多方面来看,2013年数据泄露趋势表明安全行业状况有所好转.与过去四五年不同,2013年并没有充斥着涉及数千万个人身份信息(PII)记录泄露的事故.并且根据隐私权信息交流中心(Privacy Rights Clearinghouse)的统计数据显示,公开报道的数据泄露事故数量以及泄露信息都有所减少.去年这个时候,共有约2780万条记录被泄露,报告637起数据泄露事故.今年到目前为止,约有1060万条记录被泄露,报告483起数据泄露事故.这证明了

Javaweb实现上传下载文件的多种方法_java

在Javaweb中,上传下载是经常用到的功能,对于文件上传,浏览器在上传的过程中是以流的过程将文件传给服务器,一般都是使用commons-fileupload这个包实现上传功能,因为commons-fileupload依赖于commons-io这个包,所以需要下载这两个包commons-fileupload-1.2.1.jar和commons-io-1.3.2.jar. 1.搭建环境 创建Web项目,将包导入到项目lib下 2.实现文件上传 (第一种上传的方法) 新建upload.jsp页面 <

数据分析告诉我们的四个经验教训

追踪一次点击很简单,一次点击只是一次点击.但用户与移动应用的互动方式可谓五花八门,包括单击.长按.滑动.摇晃和其他很多手势操作.如果你自称是数据驱动,但每件事情都必须由一位分析师经手,那么你就不是真正的数据驱动.为了某些变量而进行优化,你将在短期内受益,但从长远来说将毁掉你的公司.为了用户体验而进行优化,虽然需要更长的时间才能看到效果.原文翻译: 数据分析日新月异. 大多数变化起因于从PC端计算向移动端计算的过渡.移动端对数据分析而言仍然是个新领域.变化太快,所有人都在寻找更新.更好.更快的解决

一个老网虫的建站经历和经验教训

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断淘宝客 站长团购 云主机 技术大厅 我99年接触网络.最开始只 觉得很神奇,觉得做网站一定很困难,那时的雅虎.新浪等门户网站做的和现在的某些初学者做的网页很像,非常简陋.但自己觉得那一定很难. 我的习惯是,如果此事没有成功的可能.那一般不去做,所以也没怎么关注建站,99年到03年初,都是玩玩游戏,聊聊qq, 聊天室什么的. 到了03年,报考了大学,学的是电子商务专业,这

总结微博骂战的经验教训

摘要: 微博不光让我们看到了许许多多平常视角里面难以一见的世间景象,更让我们看到了许许多多的热闹场景,例如名人过招,在微博上永远都不乏围观者. 新年新景象,我们也来数一数那 微博不光让我们看到了许许多多平常视角里面难以一见的世间景象,更让我们看到了许许多多的热闹场景,例如名人过招,在微博上永远都不乏围观者. 新年新景象,我们也来数一数那些在微博上曾经骂得不可开交,骂得不亦乐乎的"冤家"们--并不是要大家新年就开骂,而是让大家总结一下微博骂战的经验教训,在新的一年里避开无谓的骂战,淡淡定

橘子舍美容网建站180天的经验教训总结

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 当站长半年来总结的经验教训:从开始做网站到现在正好半年,因为是新手,写的可能不怎么对. 我认为是经验的: 外链--多做友情链接,但前提是链接健康: 我做链接没有PR的要求,只有相关性要求.例如,我是美容站,就只和女性相关的站点链接. 搜索引擎有收录数据:首页快照日期是否是一周内的;是否每天都有收录;收录的文章占全部文章的比重,例如两个网站,甲

PHP实现远程下载文件到本地

  经常写采集器发布接口需要使用到远程附件的功能,所以自己写了一个PHP远程下载文件到本地的函数,一般情况下已经够用了,如果服务器支持CURL函数,程序则会优先选择CURL,有需要的小伙伴可以参考下. 代码很简单就不多废话了,直接奉上: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 <?php echo httpcopy("htt

Servlet下载文件文件名问题

问题描述 Servlet下载文件文件名问题 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { FileDBO fileDBO = new FileDBO(); String fileID = request.getParameter("fileId"); FileInfor file = fileDBO