- 浏览: 844023 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (530)
- Java编程 (64)
- C/C++/D (6)
- .Net/C# (9)
- Ruby (12)
- JavaScript (77)
- XML (1)
- JSON (1)
- Ajax (17)
- ExtJs (81)
- YUI (1)
- JQuery (7)
- DWR (1)
- HTML (7)
- CSS (7)
- Database (6)
- PowerDesigner (23)
- DB2 (2)
- Oracle (57)
- MS SQL Server (8)
- MySQL (6)
- JSP/Servlet/JSTL/TagLib (3)
- Spring (1)
- Hibernate (0)
- iText (0)
- Struts (0)
- Struts2 (0)
- iReport (0)
- FreeMarker (0)
- HttpClient (1)
- POI (6)
- FckEditor (15)
- Eclipse / MyEclipse (10)
- IntelliJ IDEA (0)
- NetBeans (0)
- Tomcat (11)
- WebLogic (1)
- Jboss (3)
- jetty (4)
- IIS (2)
- CVS/VSS (1)
- FTP (1)
- Windows/DOS (6)
- Linux/Unix (0)
- 软件建模 UML (0)
- Design Pattern & Thinking In Programming (10)
- 数据结构与算法 (12)
- 软件项目管理 (9)
- 行业应用解决方案 (3)
- 电脑软件与故障解决 (13)
- 编程语言 (1)
- 十万个为什么 (3)
- JBPM (2)
- sysbase (2)
- JDBC (8)
- Ant (2)
- Case-计算机辅助软件工程 (1)
- WebService (4)
- 浏览器 (1)
最新评论
-
gaoqiangjava:
同一楼,还请大手帮解决
JAVA读取word文件 -
hyl523:
// 判断数组中的第一个值是否未定义,如果未定义,便定义为空对 ...
javascript面向对象之二 命名空间 -
ping12132200:
ping12132200 写道我抱着个错不是因为:body标签 ...
extjs在IE报对象不支持此属性或方法 -
ping12132200:
我抱着个错不是因为:body标签内的第一个元素不能为文本tex ...
extjs在IE报对象不支持此属性或方法 -
fireinjava:
呀,不错,转走了,谢谢啦~
利用OpenOffice将word转换成PDF
Servlet规范说明,不能既调用 response.getOutputStream(),又调用response.getWriter(),无论先调用哪一个,在调用第二个时候应会抛出 IllegalStateException
对于getOutputStream(),api里是这样说的:Either this method or getWriter() may be called to write the body, not both.
也就是getOutputStream()和getWriter() 只能使用一个,把代码里的response.getOutputStream()全部删之后,统一使用response.getWriter() 作为输出流,问题解决。
全部代码如下
response.setContentType( "application/octet-stream ");
response.addHeader("Content-Disposition","attachment;filename=" + "work.xls");
java.io.FileInputStream fileInputStream = null;
ServletOutputStream sos = null;
PrintWriter writer = null;
try
{
fileInputStream = new java.io.FileInputStream(file);
writer = response.getWriter();
response.getOutputStream();
int i;
while((i = fileInputStream.read()) != -1)
{
writer.write(i);
}
writer.flush();
}
catch (FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
finally
{
if(sos != null)
{
try
{
sos.close();
}
catch(IOException e)
{
e.printStackTrace();
}
}
if(fileInputStream != null)
{
try
{
fileInputStream.close();
}
catch(IOException e)
{
e.printStackTrace();
}
}
if(writer != null)
{
writer.close();
}
}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/yuzhongzhu/archive/2011/03/31/6290526.aspx#
对于getOutputStream(),api里是这样说的:Either this method or getWriter() may be called to write the body, not both.
也就是getOutputStream()和getWriter() 只能使用一个,把代码里的response.getOutputStream()全部删之后,统一使用response.getWriter() 作为输出流,问题解决。
全部代码如下
response.setContentType( "application/octet-stream ");
response.addHeader("Content-Disposition","attachment;filename=" + "work.xls");
java.io.FileInputStream fileInputStream = null;
ServletOutputStream sos = null;
PrintWriter writer = null;
try
{
fileInputStream = new java.io.FileInputStream(file);
writer = response.getWriter();
response.getOutputStream();
int i;
while((i = fileInputStream.read()) != -1)
{
writer.write(i);
}
writer.flush();
}
catch (FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
finally
{
if(sos != null)
{
try
{
sos.close();
}
catch(IOException e)
{
e.printStackTrace();
}
}
if(fileInputStream != null)
{
try
{
fileInputStream.close();
}
catch(IOException e)
{
e.printStackTrace();
}
}
if(writer != null)
{
writer.close();
}
}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/yuzhongzhu/archive/2011/03/31/6290526.aspx#
发表评论
-
java调用dll方法
2011-06-02 21:56 1601Java语言本身具有跨平台性,如果通过Java调用DLL的技术 ... -
DIV+CSS
2011-05-31 13:07 901http://www.divcss5.com/ -
CVS客户端
2011-05-27 14:54 916http://www.syntevo.com/index.ht ... -
UML工具
2011-05-25 18:59 898http://www.umlchina.com/Tools/N ... -
applicationcontext.xml怎么分模块简化配置?
2011-05-22 18:02 2250(1) 在用spring做项止的时候,我们经常会在appli ... -
Struts1.2分模块后的路径问题
2011-05-22 18:00 16131.某项目分模块的web.xml配置如下: <i ... -
java API chm html 1.5 1.6 中文版英文版 帮助文档
2011-05-14 10:45 2677J2SE DK & API下载 ————————- h ... -
ClientAbortException原因探究
2010-12-23 16:17 1877WEB是部署在TOMCAT5.5.17下面的,采用JNDI链接 ... -
java游戏 http://blog.csdn.net/cping1982/archive/2009/06/10/4258704.aspx
2010-11-08 22:31 1265http://blog.csdn.net/cping1982/ ... -
Java中字符串(String)的存储和赋值原理
2010-11-08 22:14 1231可能很多java的初学者对String的存储和赋值有迷惑, ... -
Java中字符串的最大长度
2010-11-08 22:12 1317在cpp中为了可移植性,string的长度是string::s ... -
Java与XML联合编程之DOM篇
2010-10-06 13:37 892一、DOM初步 DOM是Document Object ... -
jexl解析表达式字符串
2010-10-06 11:44 1958网址:http://commons.apache.org/je ... -
Java中getResourceAsStream的用法
2010-10-06 11:31 2010Java中getResourceAsStream的用法 首先 ... -
Class.getResourceAsStream 和 ClassLoader.getResourceAsStream
2010-10-06 11:08 857Class.getResourceAsStream 和 Cla ... -
利用第三方的Jar包内的类和方法来判别文件编码
2010-08-06 13:07 1789今天在论坛里看见了一个人发帖子问,如何查看文件的编码。有一个人 ... -
将Java程序作成exe文件的几种方法
2010-08-06 13:04 966看到网上有同志的介绍将Java程序作成exe文件的方法,写的不 ... -
Java基本类型转换总结
2010-07-26 19:49 1391数值型转换成字符型 // 基本数据类型, int i_a ... -
怎样不使用中间变量来交换两个变量的值?
2010-07-10 21:39 1521int 的话就+后再减.string 的话就连接再截取. ... -
使用Java Service Wrapper 把Java程序作为Windows系统服务
2010-07-09 18:00 862转自:http://www.cjsdn.net/post/vi ...
相关推荐
在Java Web开发中,"getOutputStream() has already been called for this response" 是一个常见的错误,通常出现在使用Servlet或JSP时。这个错误意味着在HTTP响应中,`getOutputStream()`已经被调用,然后尝试再次...
在使用Tomcat 6服务器部署和运行Java Server Pages (JSP) 时,可能会遇到一个特定的异常:“getOutputStream() has already been called for this response”。该异常发生在尝试向响应对象中写入数据时,已经调用了...
### PowerBuilder 中从 Excel 导入数据到 DataWindow 的实现方法 #### 标题解析: 在 PowerBuilder 开发环境中,经常需要将外部数据源(如 Excel 文件)中的数据导入到程序内部的数据展示组件(DataWindow)中进行...
在IT行业中,尤其是在Web开发领域,`response.getWriter().write()` 是一个常见的Java Servlet API方法,用于向客户端(通常是浏览器)发送响应数据。这个方法在处理AJAX(Asynchronous JavaScript and XML)请求时...
response.getWriter().write() 功能:向前台页面显示一段信息。 当在普通的url方式中,会生成一个新的页面来显示内容。 当在ajax的方式中,会在alert中显示内容。 使用response.getWriter().write() 乱码问题 解决...
response.getWriter().write("实现 ServletResponseAware 接口"); } } ``` 在上面的代码中,MyAction 实现了 ServletResponseAware 接口,并实现了 setServletResponse 方法。如果一个动作类实现了 ...
Returns a boolean indicating whether the named response header has already been set. contextDestroyed(ServletContextEvent) - Method in interface javax.servlet.ServletContextListener Notification ...
PrintWriter writer = response.getWriter(); writer.println("<h1>Hello, World!</h1>"); writer.close(); ``` 七、示例代码 以下是一个简单的Servlet实例,展示了上述各种设置: ```java import javax.servlet.*;...
### request与response详解 在Web开发中,`request`与`response`是两个非常核心的概念,它们在客户端与服务器端之间传递数据的过程中扮演着至关重要的角色。本文将深入解析这两个对象的功能及其使用方法。 #### 一...
HttpServletRequest-response方法总结 HttpServletRequest和HttpServletResponse是Servlet编程中两个最重要的接口,它们提供了对HTTP请求和响应的控制和处理。下面是对HttpServletRequest和HttpServletResponse的...
例如,`PrintWriter out = response.getWriter(); out.println("<h1>Hello, World!</h1>");` 8. **设置缓冲区大小** `response.setBufferSize(int size)`允许设置响应输出流的缓冲区大小。这有助于优化性能,但不...
JSP内置对象request和response详解 JSP内置对象request和response是JSP开发中两个非常重要的对象,它们分别用于处理客户端请求和响应信息。在本文档中,我们将详细介绍request和response对象的功能和使用方法。 ...
在Java Web开发中,`response.jsp`通常是指服务器端的响应页面,主要涉及Servlet和JSP(JavaServer Pages)技术。`response`对象是Servlet API中的一个关键组件,全称为`HttpServletResponse`,它用于构建并发送回...
PrintWriter out = response.getWriter(); out.println("<html><body>Hello World!</body></html>"); ``` - 设置一个 JPEG 图片: ```java response.setContentType("image/jpeg"); // ... 读取图片并发送到...
response.getWriter().write("<h1>Hello, World!</h1>"); ``` 在Struts2中,ActionContext不仅仅是获取request和response的工具,它还包含了其他有用的上下文信息,如session、application等。例如,你可以通过...
在JavaScript编程中,`response` 是一个非常关键的对象,它主要用在服务器端脚本,如Java Servlets、Node.js的Express框架等,用于向客户端(通常是浏览器)发送数据。当我们看到"response返回信息1"这样的表述时,...
* This method is called when a form has its tag value method equals to get. * * @param request the request send by the client to the server * @param response the response send by the server ...
PrintWriter out = response.getWriter(); out.println("<h1>Hello, " + username + "!</h1>"); // 关闭输出流 out.close(); } } ``` 在这个例子中,Servlet接收了一个名为"username"的请求参数,并在响应中...