
struts2下载文件报错,不是点取消才报错,是出现下载框就报错,但能下载成功 60
错误:2013-8-1010:44:06org.apache.catalina.core.StandardWrapperValveinvoke严重:Servlet.ser...
错误:
2013-8-10 10:44:06 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet default threw exception
java.lang.IllegalStateException
at org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:407)
at org.apache.struts2.dispatcher.Dispatcher.sendError(Dispatcher.java:753)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:506)
。。。
action:(文件流存在数据库中)
public InputStream getTargetFile() {
return is;
}
public String execute() {
Attachment a=fedao.getAttaById(sid);
is = a.getContents().getBinaryStream();
fileName=URLEncoder.encode(a.getFilename(),"utf-8");
return SUCCESS;
}
struts.xml:
<action name="download" class="DownloadAction">
<result name="success" type="stream">
<!-- 下载文件类型定义 -->
<param name="contentType">text/plain</param>
<!-- 下载文件处理方法 -->
<param name="contentDisposition">
attachment;filename="${fileName}"
</param>
<!-- 下载文件输出流定义 -->
<param name="inputName">targetFile</param>
<param name="bufferSize">4096</param>
</result>
</action>
还是没有解决,继续求助 展开
2013-8-10 10:44:06 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet default threw exception
java.lang.IllegalStateException
at org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:407)
at org.apache.struts2.dispatcher.Dispatcher.sendError(Dispatcher.java:753)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:506)
。。。
action:(文件流存在数据库中)
public InputStream getTargetFile() {
return is;
}
public String execute() {
Attachment a=fedao.getAttaById(sid);
is = a.getContents().getBinaryStream();
fileName=URLEncoder.encode(a.getFilename(),"utf-8");
return SUCCESS;
}
struts.xml:
<action name="download" class="DownloadAction">
<result name="success" type="stream">
<!-- 下载文件类型定义 -->
<param name="contentType">text/plain</param>
<!-- 下载文件处理方法 -->
<param name="contentDisposition">
attachment;filename="${fileName}"
</param>
<!-- 下载文件输出流定义 -->
<param name="inputName">targetFile</param>
<param name="bufferSize">4096</param>
</result>
</action>
还是没有解决,继续求助 展开
展开全部
试着把
<param name="contentDisposition">
attachment;filename="${fileName}"
</param>
的attachment和后面的分号去掉
<param name="contentDisposition">
attachment;filename="${fileName}"
</param>
的attachment和后面的分号去掉
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个就是取消下载或关闭浏览器的时候出现的错误,流正在输出,客户端突然终止接收;
解决的办法:http://www.docin.com/p-591073612.html#documentinfo
解决的办法:http://www.docin.com/p-591073612.html#documentinfo
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-10
展开全部
java.lang.IllegalStateException
错误的提示,还没到你写的代码的行。贴多一些错误信息。
错误的提示,还没到你写的代码的行。贴多一些错误信息。
追问
错误没有提到我写的代码
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的form表单贴上来看一下
追问
下载
这跟form表单没关系吧,就是个下载的超链接
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询