Seam默认下载文件会变成直接在网页中打开内容,主要是因为Response header的问题,需要手工调节下,大概思路如下:

public String download() {   Attachment attachment = entityManager.find(Attachment.class, attachmentId);   HttpServletResponse response = (HttpServletResponse)extCtx.getResponse();   response.setContentType(attachment.getContentType());   response.addHeader("Content-disposition", "attachment; filename=\"" + attachment.getName() +"\"");   try {   ServletOutputStream os = response.getOutputStream();   os.write(attachment.getData());   os.flush();   os.close();   facesContext.responseComplete();   } catch(Exception e) {   log.error("\nFailure : " + e.toString() + "\n");   }   return null;   }  

不过这样似乎也有问题,要把文件全部读入内存然后在下载……

不知道有人知道其他办法没,有待补充

Seam下载文件的问题相关推荐

  1. 用python下载文件的若干种方法汇总

    压缩文件可以直接放到下载器里面下载的 you-get 连接 下载任意文件 重点 用python下载文件的若干种方法汇总 写文章 用python下载文件的若干种方法汇总 zhangqibot发表于Met ...

  2. 初级版python登录验证,上传下载文件加MD5文件校验

    服务器端程序 import socket import json import struct import hashlib import osdef md5_code(usr, pwd):ret = ...

  3. linux快捷上传下载文件

    借助securtCRT,使用linux命令sz可以很方便的将服务器上的文件下载到本地,使用rz命令则是把本地文件上传到服务器 其中,对于sz和rz的理解与记忆我用了如下的方法(因为很多时候容易搞混): ...

  4. 基于php下载文件的详解

    基于php下载文件的详解 本篇文章是对php下载文件进行了详细的分析介绍,需要的朋友参考下 php下载文件,比如txt文件. 出现的效果就是,弹出浏览器自带的下载框,出现另存为操作.有时候会出现内存溢 ...

  5. java上传加密_Java上传下载文件并实现加密解密

    使用 Jersey 服务器实现上传,使用 HTTP 请求实现下载 引入依赖 在 pom.xml 中添加 Jersey 相关依赖 com.sun.jersey jersey-client 1.18.1 ...

  6. sftp shell 批量上传文件_Shell自动上传下载文件到SFTP服务器

    1.说明 本文提供一个Shell脚本, 可以自动连接到SFTP服务器, 然后上传或者下载指定的文件, 进而可以使用Linux的corntab命令, 定时执行脚本上传下载文件, 实现文件的同步或者备份功 ...

  7. php 当前页面下载文件,php实现当前页面点击下载文件的简单方法

    php实现当前页面点击下载文件的简单方法 发布于 2017-08-02 17:44:21 | 80 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypertext ...

  8. ASP.NET 下载文件方式

    protected void Button1_Click(object sender, EventArgs e){/*微软为Response对象提供了一个新的方法TransmitFile来解决使用Re ...

  9. java urlconn 下载慢_使用HttpURLConnection下载文件时出现 java.io.FileNotFoundException彻底解决办法...

    import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.RandomAc ...

最新文章

  1. 一个很好的 emacs 配置文件范例
  2. Cacti性能优化和监控H3C交换机
  3. oracle中创建函数行变列,oracle decode 函数实现行转列
  4. mysql dba系统学习(10)innodb引擎的redo log日志的原理 mysql dba系统学习(11)管理innodb引擎的redo log日志的一个问题
  5. 9.Boost之正则regex
  6. Linux应用编程之共享内存实例
  7. C#LeetCode刷题之#232-用栈实现队列​​​​​​​​​​​​​​(Implement Queue using Stacks)
  8. android 动态申请权限_你真的了解Android权限机制吗?
  9. 水桶平分 java_关于java:桶排序算法代码问题
  10. 英语总结系列(十九):七月英语Baby成长史
  11. App测试的11点建议
  12. python好玩的代码-神奇的Python,一行代码能做哪些炫酷的事情?
  13. sql提取身份证号码信息
  14. OSChina 周四乱弹 ——Iphone7出了开始做牛做马了
  15. STM32F7 硬件IIC驱动
  16. 神念TGAM模块+树莓派GPIO控制灯泡(脑电波控制物联网应用示例)
  17. 类ku6未注册域名分享
  18. 浅谈共线性的产生以及解决方法(中篇——今生)
  19. 紫光信息港 软件测试,紫光展锐 信息化软件工程师面经
  20. CentOS7下载安装nginx

热门文章

  1. 高效办公小工具:AutoHotkey(进阶版)——自定义组合键打开指定应用与网页,手机号邮箱等自动补全
  2. 二阶系统欠阻尼状态极点位置对阶跃响应的影响
  3. 无线移动通信中的多普勒效应及其消除方法
  4. python 中的递归深度限制和重置
  5. 易语言调用大漠插件后台绑定游戏窗口源码
  6. 从 DOS 命令到制作IMG映像的详细解说实战教程课
  7. CCIE考试和考试费用
  8. taichi安装与使用
  9. 【免费开源代码】java多商户电商系统
  10. jacob添加word页眉和页脚