Hello all,
    I am getting Illegal State Exception while using response.getOutputStream() in my 
JSP...Its executing fine..But at the end I am getting java.lang.IllegalStateException. 
I am using this response.getOuputStream() to write images to a HTML file. Thanks in 
advance.

My code is as follows:

<[EMAIL PROTECTED] errorPage="/xnap_errorpage.jsp"%><[EMAIL PROTECTED]
import="java.io.*,java.util.*"session="true"%><jsp:useBean
id="mySmartUpload"scope="page"class="com.jspsmart.upload.SmartUpload"/><%String 
name=(String)session.getAttribute("userid");
String type=request.getParameter("type");
String user=request.getParameter("user");
String
filePath="/home/"+user+"/email/attachments/"+request.getParameter("name");
StringTokenizer stk=new StringTokenizer(filePath,"/");
        while(stk.hasMoreElements()){
                String home=stk.nextToken();
                if(!home.equals("home")){
                log("The base directory is wrong, going to index.jsp");
                response.sendRedirect("/index.jsp");
                return;
                }
                String user1=stk.nextToken();
                String email=stk.nextToken();
                if(!email.equals("email")){
                log("The directory after username is wrong, going to index.jsp");
                response.sendRedirect("/index.jsp");
                return;
                }
                String attachments=stk.nextToken();
                if(!attachments.equals("attachments")){
                log("The attachments directory is wrong, going to index.jsp");
                response.sendRedirect("/index.jsp");
                return;
                }
                break;
        }
log("Path is  " + filePath);
File f=new File(filePath);
String getPath=f.getPath();
//out.flush();
ServletOutputStream stream=null;
BufferedInputStream bif=null;
response.reset();
if( request.getParameter("type").equals("gif") )
        response.setContentType("image/gif");
else
        response.setContentType("image/jpg");
//response.setContentType("application/x-filler");
try{
stream = response.getOutputStream();
bif = new BufferedInputStream(new FileInputStream(filePath));
}catch(Exception e){log("Exception occurred in FileDownloader.jsp , as
file does not exists" + e);
response.sendRedirect("/index.jsp");
return;
}
byte b[]=new byte[1024];
int cache=bif.read(b,0,1024);
int tot=cache;
while (cache != -1)
{
        stream.write(b,0,cache);
        //out.write(b,0,cache);
        cache = bif.read(b,0,1024);
         tot+=cache;
}
if(bif!=null)bif.close();
if(stream!=null) stream.close();
log("====================>End of FileDownloader.jsp<=================");
%>

===========================================================================
To unsubscribe: mailto [EMAIL PROTECTED] with body: "signoff JSP-INTEREST".
For digest: mailto [EMAIL PROTECTED] with body: "set JSP-INTEREST DIGEST".

Some relevant archives, FAQs and Forums on JSPs can be found at:

 http://java.sun.com/products/jsp
 http://archives.java.sun.com/jsp-interest.html
 http://forums.java.sun.com
 http://www.jspinsider.com

Reply via email to