1

I have a problem. I need to send a picture from servlet to jsp. I get a picture in jsp but every picture is cut. Not the full picture but like 80-90%, what can it be? Ty.

Here's a servlet code:

@Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String login = request.getParameter("login");
        String password = request.getParameter("password");
        System.out.println(login);
        System.out.println(password);
        FileInputStream fis = new FileInputStream(new File("D:\\Projects\\Java\\WebApplication4\\web\\gavno.jpg"));
        BufferedInputStream bis = new BufferedInputStream(fis);
        response.setContentType("image/jpeg");
        BufferedOutputStream output = new BufferedOutputStream(response.getOutputStream());
        for (int data; (data = bis.read()) != -1;) {
            output.write(data);
        }
        request.getRequestDispatcher("WEB-INF/page.jsp").forward(request, response);
    }

1 Answers1

1

Found the answer:

response.setContentType("image/jpeg");  
    ServletOutputStream out;  
    out = response.getOutputStream();  
    FileInputStream fin = new FileInputStream("c:\\test\\java.jpg");  

    BufferedInputStream bin = new BufferedInputStream(fin);  
    BufferedOutputStream bout = new BufferedOutputStream(out);  
    int ch =0; ;  
    while((ch=bin.read())!=-1)  
    {  
    bout.write(ch);  
    }  

    bin.close();  
    fin.close();  
    bout.close();  
    out.close(); 
Billal Begueradj
  • 20,717
  • 43
  • 112
  • 130