当前位置: 技术问答>java相关
请进来看看,怎么样避免这种情况发生?
来源: 互联网 发布时间:2017-04-25
本文导语: 我的下载程序中有一部分: sql="select blob from try where id=3"; rs=stmt.executeQuery(sql); if(rs.next()) { in=rs.getBinaryStream(1); outt=response.getOutputStream(); int i; ...
我的下载程序中有一部分:
sql="select blob from try where id=3";
rs=stmt.executeQuery(sql);
if(rs.next())
{
in=rs.getBinaryStream(1);
outt=response.getOutputStream();
int i;
while((i=in.read())!=-1)
{
outt.write(i);
}
}
}
其中: 定义: OutputStream outt=null;
我用的是连接池.
但是,每次执行下载操作,都会报错:
IllegalStateException in: R( + /henry/download.jsp + null) OutputStream is already being used for this request
但执行还可以继续,可以成功下载
怎么回事?怎么避免???一定帮忙
sql="select blob from try where id=3";
rs=stmt.executeQuery(sql);
if(rs.next())
{
in=rs.getBinaryStream(1);
outt=response.getOutputStream();
int i;
while((i=in.read())!=-1)
{
outt.write(i);
}
}
}
其中: 定义: OutputStream outt=null;
我用的是连接池.
但是,每次执行下载操作,都会报错:
IllegalStateException in: R( + /henry/download.jsp + null) OutputStream is already being used for this request
但执行还可以继续,可以成功下载
怎么回事?怎么避免???一定帮忙
|
是这样的:
你的jsp也许要用到response.getOutputStream,而这个只能使用一次。
你的download是成功了,但jsp并没有输出,可能正好符合你的要求了。
你可以写servlet,只输出这个部分,或者jsp里面不要输出除头以外的任何
其他内容。就是不要出现其他的html代码。
你的jsp也许要用到response.getOutputStream,而这个只能使用一次。
你的download是成功了,但jsp并没有输出,可能正好符合你的要求了。
你可以写servlet,只输出这个部分,或者jsp里面不要输出除头以外的任何
其他内容。就是不要出现其他的html代码。