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;
}
不过这样似乎也有问题,要把文件全部读入内存然后在下载……
不知道有人知道其他办法没,有待补充
分享到:
相关推荐
**JBoss Seam 中文文档集合概述** JBoss Seam 是一个开源的应用框架,它结合了JavaServer Faces (JSF)、Java Persistence API (JPA)、Enterprise JavaBeans (EJB) 3.0 和其他Java EE组件,旨在简化企业级开发。这个...
【JBoss Seam 2.0文档详解】 JBoss Seam 是一个开源的企业级开发框架,它旨在简化Java EE应用的开发过程,特别是在Web和富互联网应用程序(Rich Internet Applications, RIA)领域。Seam 2.0是其重要的版本,提供了...
seam 中文文档 pdf 格式 JSF+EJB3.0快速开发框架Seam的中文版向导。。。
Seam鼓励使用Java 5的注解特性来配置应用,这种方式可以减少XML配置文件的数量,提高开发效率。 ##### 7. 增强的表达式语言 Seam提供了对标准EL(Expression Language)的扩展,称为JBoss EL。这种扩展允许在...
最新SEAM参考文档中文版,12.30翻译
### JBoss Seam 中文文档知识点概述 #### 一、JBoss Seam 简介 JBoss Seam 是一款基于 Java EE 的应用开发框架,它通过提供一套丰富的组件模型和灵活的应用结构,极大地简化了企业级应用的开发过程。Seam 结合了 ...
将下载的 jboss-seam-2.0.0.GA.zip 解压,并修改 build.properties 文件,添加 jboss.home 指向你的 JBoss 服务器安装目录。这使得 Ant 能自动将应用部署到 JBoss 服务器。在 examples\booking 目录下运行 Ant 命令...
- **下载工具**:下载最新版本的 seam-gen。 **2.2 设置 Eclipse 项目** - **创建项目**:在 Eclipse 中创建一个新的 Java 项目。 - **导入模板**:使用 seam-gen 生成的模板初始化项目。 **2.3 创建新动作** - ...
标题中的“Jboss seam3 实战”表明,本文将重点介绍JBoss Seam框架的第三个版本的实际应用。JBoss Seam是一个开源的Java EE框架,它通过依赖注入和会话模型,简化了基于Java EE的企业级应用开发。Seam框架为开发者...
对于开发者来说,这份文档是解决具体问题和深入学习Seam不可或缺的参考资料。 通过学习这三本书,你可以获得以下关键知识点: 1. **Seam核心概念**:了解Seam的组件模型,包括Managed Beans、Components、Event ...
Seam 2.0 是一个全面的Java EE框架,它为开发人员提供了一种整合多种技术,如JavaServer Faces (JSF)、Enterprise...这份文档将是一个宝贵的资源,对于想要学习或已经在使用Seam 2.0的开发者来说,具有很高的参考价值。
你可以查阅Seam官方文档,参与论坛讨论,或者参考其他开发者的经验分享,以解决遇到的难题。 总之,虽然在Tomcat中运行Seam2可能需要更多的手动配置,但它仍然提供了一种在非EJB环境中利用Seam强大特性的途径。理解...
- **版本信息**:本文档介绍了 SEAM 2.0 GA 版本的功能特性及其使用方法。 #### 二、SEAM 入门指南 ##### 1.1 尝试 SEAM - **环境搭建**: - 在 **JBoss AS** 上运行示例。 - 在 **Tomcat服务器** 上运行示例。...
《JBoss Seam 2.0:企业级应用开发框架详解》 JBoss Seam是一个全面的Java EE集成框架,特别设计用于简化企业级应用程序的开发。...文档中包含的CHM文件和相关资源将帮助读者全面理解并掌握Seam 2.0的各个方面。
提供的"代码"文件可能包含了这些步骤的具体实现,包括能量图计算、拉链查找算法、像素操作函数以及主程序逻辑。通过阅读和理解这些代码,我们可以深入学习Seam Carving的工作原理,并将其应用于实际项目中。 总结来...
Seam的主要优势在于它的事件驱动模型和组件化特性,使得开发者可以更加专注于业务逻辑,而不是底层的集成问题。 **EJB(Enterprise JavaBeans)** EJB是Java EE平台的核心部分,用于构建可部署在服务器端的组件。在...
6. **Seam配置**:`seam-getting-started-build.xml`文件很可能是Seam项目的构建文件,可能包含Maven或Ant的配置信息,用于编译、测试和打包项目。理解如何配置Seam项目以及依赖管理是非常重要的。 7. **开发环境**...
- **The Seam Debug Page**:介绍如何使用 Seam 2.1 的调试页面来诊断和解决问题。 ##### 6. 嵌套对话示例 扩展了酒店预订示例,演示了如何在 Seam 2.1 中使用嵌套对话来管理更复杂的用户交互场景。 - **...