forked from Coded/SIPRP
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
98 lines
2.4 KiB
98 lines
2.4 KiB
package siprp.images.servlet;
|
|
|
|
import com.evolute.utils.error.ErrorLogger;
|
|
|
|
import javax.servlet.ServletOutputStream;
|
|
import javax.servlet.http.HttpServlet;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import siprp.data.outer.ImageData;
|
|
|
|
public final class ImagesServlet extends HttpServlet
|
|
{
|
|
private static final long serialVersionUID = 999506147931075031L;
|
|
// private static final double MAX_WIDTH = 4.5;
|
|
// private static final double MAX_HEIGHT = 2.0;
|
|
|
|
private static final String PARAMETER_ID = "id";
|
|
|
|
// private static Boolean logger = false;
|
|
// static
|
|
// {
|
|
// if ( ! logger )
|
|
// {
|
|
// WebImagesLogger.init();
|
|
// logger = true;
|
|
// }
|
|
// }
|
|
|
|
public void doGet( HttpServletRequest request, HttpServletResponse response ) //throws IOException, ServletException
|
|
{
|
|
response.setContentType( "image/png" );
|
|
String param = request.getParameter( PARAMETER_ID );
|
|
|
|
System.out.println( "SIPRPImages . ImagesServlet . doGet() : ImageData.ID = " + param );
|
|
|
|
try
|
|
{
|
|
ServletOutputStream out = response.getOutputStream();
|
|
|
|
if ( param != null && ! "".equals( param.trim() ) )
|
|
{
|
|
try
|
|
{
|
|
Integer imageID = new Integer( param );
|
|
|
|
ImageDataProvider imgProvider = ImageDataProvider.getProvider();
|
|
ImageData img = imgProvider.loadImageDataByID( imageID );
|
|
if ( img != null )
|
|
{
|
|
out.write( img.getImage_data() );
|
|
}
|
|
}
|
|
catch ( Exception e )
|
|
{
|
|
ErrorLogger.logException( e );
|
|
}
|
|
}
|
|
|
|
out.flush();
|
|
out.close();
|
|
}
|
|
catch ( Exception e )
|
|
{
|
|
e.printStackTrace();
|
|
// ErrorLogger.logException( e );
|
|
}
|
|
|
|
|
|
|
|
// response.setContentType( "image/png" );
|
|
// ServletOutputStream out = response.getOutputStream();
|
|
// String param = request.getParameter( PARAMETER_ID );
|
|
// System.out.println(param);
|
|
// try
|
|
// {
|
|
// Integer id = new Integer( param );
|
|
// Image img = new ImageDAO().getImageForID( id );
|
|
//// int width = img.getWidth( null );
|
|
//// int height = img.getHeight( null );
|
|
//// double wrel = ((double)width ) / MAX_WIDTH;
|
|
//// double hrel = ((double)height ) / MAX_HEIGHT;
|
|
//// if( wrel > 1 && wrel > hrel )
|
|
//// {
|
|
//// img = img.getScaledInstance( MAX_WIDTH, -1, Image.SCALE_FAST );
|
|
//// }
|
|
//// else if( hrel > 1 && hrel > wrel )
|
|
//// {
|
|
//// img = img.getScaledInstance( -1, MAX_HEIGHT, Image.SCALE_FAST );
|
|
//// }
|
|
// out.write( img.getImageData() );
|
|
// }
|
|
// catch (Exception e) {
|
|
// e.printStackTrace();
|
|
// }
|
|
}
|
|
|
|
}
|