package org.tgdb.servlets;
import org.tgdb.resource.file.FileRemoteHome;
import java.io.*;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;
import org.tgdb.servicelocator.ServiceLocator;
import org.tgdb.model.modelmanager.ModelManagerRemote;
import org.tgdb.resource.file.FileRemote;
public class ImageServlet extends HttpServlet {
protected ServiceLocator locator;
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try{
if(request.getParameter("fileid")!=null && request.getParameter("fileid").length()>0){
Integer fileid = new Integer(request.getParameter("fileid"));
locator = ServiceLocator.getInstance();
FileRemoteHome fh = (FileRemoteHome)locator.getHome(ServiceLocator.Services.FILE);
FileRemote file = fh.findByPrimaryKey(fileid);
byte[] data = file.getData();
String mimeType = file.getMimeType();
response.setContentType(mimeType);
String fileName = file.getName();
response.setHeader("Content-Disposition", "inline; filename=" + fileName);
ServletOutputStream sos = response.getOutputStream();
sos.write(data);
sos.close();
}
} catch (Exception e) {}
}
// <editor-fold defaultstate="collapsed">
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
public String getServletInfo() {
return "Short description";
}
// </editor-fold>
}