at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:178)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:151)
>
这是因为weblogic会向response中写东西造成的,解决方式是将此句response.reset();的注释打开,这样在使用response时先将其重置。
二 .利用jspsmartupload.jar实现下载
第一个页面同上
download.jsp实现如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="com.jspsmart.upload.*" %>
<%!
public String toUtf8String(String s)
{
StringBuffer sb = new StringBuffer();
for (int i = 0; i < s.length(); i++)
{
char c = s.charAt(i);
if (c >= 0 && c <= 255)
{
sb.append(c);
}
else
{
byte[] b;

try
{
b = Character.toString(c).getBytes("utf-8");
}
catch (Exception ex)
{
System.out.println(ex);
b = new byte[0];
}
for (int j = 0; j < b.length; j++)
{
int k = b[j];
if (k < 0)
k += 256;
sb.append("%" + Integer.toHexString(k).toUpperCase());
}
}
}
return sb.toString();
}
%>
<%
response.reset();//如果在weblogic底下同样要加上此句
String filePath = request.getParameter("filePath");
String disName = request.getParameter("disName");
// 新建一个SmartUpload对象
SmartUpload su = new SmartUpload();
// 初始化
su.initialize(pageContext);
// 设定contentDisposition为null以禁止浏览器自动打开文件,
//保证点击链接后是下载文件。若不设定,则下载的文件扩展名为
//doc时,浏览器将自动用word打开它。扩展名为pdf时,
//浏览器将用acrobat打开。
su.setContentDisposition(null);
// 下载文件
String fileName = toUtf8String(disName);
try{
su.downloadFile(filePath,null,fileName);
}
catch(java.io.FileNotFoundException e){
%>
<script Language="javascript">
alert('服务器上未找到要下载的文件!');
</script>
<%}
%>下载完毕!
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-27692-3.html
扔股市是血本无归
南方黑芝麻糊虽然垄断性地位
桃子加油
9