JspSmartUpload下载报错

JspSmartUpload下载报错getOutputStream() has already been called for this response
楼主hony1999()2004-09-12 16:15:21 在 Java / Web 开发 提问
我使用JspSmartUpload控件下载的时候,使用
引用
mySmartUpload.downloadFile(downloadpath);
 
有的可下载,有的会提示出错:  
 java.lang.IllegalStateException:   getOutputStream()   has   already   been   called   for   this   response  

  怎么回事啊?我想是控件内部打开了某个变量,然后打开了没有关闭,但没有源文件,也不知道怎样改  
 <%         
    mySmartUpload.init(config);   
          mySmartUpload.service(request,response);   
          String   username=request.getParameter("author");   
          String   file=request.getParameter("flname");   
            
          mySmartUpload.downloadFile("/upload/"+username+"/"+file);   
  %>   
  有人遇过这个错误吗?这里面还要添加什么语句啊  
 
问题点数:40、回复次数:10
Top


1 楼hony1999()回复于 2004-09-13 10:20:51 得分 0 怎么没人理我
Top

2 楼KarlL(只想小鱼)回复于 2004-09-16 12:06:12 得分 10我也是用这个mySmartupload,请加我[email protected]
Top

3 楼qldong(董)回复于 2004-10-27 20:11:21 得分 0 也想知道!
Top

4 楼samue(下弦月)回复于 2004-11-22 22:46:13 得分 5我也是这样的问题,在下TXT文件的时候  
 
Top

5 楼Herman_TheTemplar(下雨的天空)回复于 2004-11-23 08:43:56 得分 5不光是下载文件,凡是涉及输出流的,都遇到过这个问题。  
  关注!!!  
  你用“java.lang.IllegalStateException:   getOutputStream()   has   already   been   called   for   this   response”在Google能查出一堆来  
  谁能帮我们真正解决一下……
Top

6 楼Herman_TheTemplar(下雨的天空)回复于 2004-11-24 09:09:14 得分 0 解决了吗?
Top

7 楼tangliyingtly(小汤)回复于 2004-11-24 13:42:17 得分 0 也遇到这个问题,求助!
Top

8 楼fengliu212()回复于 2004-11-24 16:01:41 得分 0 关注
Top

9 楼cnfalcon(中国猎鹰)回复于 2004-11-25 10:07:56 得分 20下载时最好使用servlet,用jsp编译后加入下面的代码  
           
  _jspx_page_context   =   pageContext;   
              application   =   pageContext.getServletContext();   
              config   =   pageContext.getServletConfig();   
              session   =   pageContext.getSession();   
              out   =   pageContext.getOut();   
              _jspx_out   =   out;   
  其中out   =   pageContext.getOut();就是得到OutputStream,运行时就出错了,用servlet不会出现这种问题。   
  代码   
  import   javax.servlet.*;   
  import   javax.servlet.http.*;   
  import   java.io.*;   
  import   java.util.*;   
  import   com.jspsmart.upload.*;   
    
  public   class   servletDown   extends   HttpServlet   {   
          private   static   final   String   CONTENT_TYPE   =   "text/html;   charset=GBK";   
    
          private   ServletConfig   config;   
          /**   
          *   Init   the   servlet   
          */   
          final   public   void   init(ServletConfig   config)   throws   ServletException   {   
                          this.config   =   config;   
          }   
    
          final   public   ServletConfig   getServletConfig()   {   
                          return   config;   
          }   
    
          //Process   the   HTTP   Get   request   
          public   void   doGet(HttpServletRequest   request,   HttpServletResponse   response)   throws   
                          ServletException,   IOException   {   
                  SmartUpload   mySmartUpload=new   SmartUpload();   
                  //   Initialization                   
                  mySmartUpload.initialize(config,request,response);   
    
                  try   
                  {   
                      //   Download   file   
                      mySmartUpload.downloadFile("/upload/sample.zip");   
                  }   
                  catch(IOException   ioe)   
                  {                       
                      System.out.println("ioe");   
                      System.out.println(ioe.getMessage());   
                  }   
                  catch(SmartUploadException   sme)   
                  {   
                      System.out.println("sme");   
                      System.out.println(sme.getMessage());   
                  }   
                  catch(ServletException   se)   
                  {   
                      System.out.println("se");   
                      System.out.println(se.getMessage());   
                  }   
          }   
    
          //Process   the   HTTP   Post   request   
          public   void   doPost(HttpServletRequest   request,   HttpServletResponse   response)   throws   
                          ServletException,   IOException   {   
                  doGet(request,   response);   
          }   
    
          //Clean   up   resources   
          public   void   destroy()   {   
          }   
  }   
  
Top

10 楼hony1999()回复于 2005-07-19 22:21:04 得分 0
后来解决了,就是文件开始的<%%>都要紧挨着,不能有空格,更不能有换行,如:   
  <%@   page   contentType="text/html;   charset=GBK"   %><%@   page   import="java.io.*"   %><%   
  真不知道为什么,但确实好使,哈哈,希望遇到同样问题的兄弟们都试试。

你可能感兴趣的:(Web,jsp,servlet,Google,UP)