最近用io直接下载文件 怎么也不行 不是文件无法下载 就是抛already call那个异常 写上out.clear和out=pageContext.pushBody也无解 没办法 就用了这个来下载 代码十分简单 用了servlet来实现:
public class DownLoadServlet extends HttpServlet {
@Override
public void init(ServletConfig config) throws ServletException {
// TODO Auto-generated method stub
this.config=config;
}
private ServletConfig config;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
//super.doGet(req, resp);
try {
String filename="f:\\20121225.xls";
SmartUpload upload=new SmartUpload();
upload.initialize(config, req, resp);
upload.setContentDisposition(null);
upload.downloadFile(filename);
} catch (SmartUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
this.doGet(req, resp);
}
}