1 package ch.ige.edossier.util;
2
3 import java.io.*;
4 import javax.servlet.ServletException;
5 import javax.servlet.http.HttpServlet;
6 import javax.servlet.http.HttpServletRequest;
7 import javax.servlet.http.HttpServletResponse;
8
9
19 public class ImageServlet extends HttpServlet
20 {
21 private static final String CONTENT_TYPE = "text/plain";
22
23 public void init() throws ServletException
24 {}
25
26 public void doGet( HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException
28 {
29 String tiffPath = request.getParameter( "tiffPath" );
30 int status = 0;
31
32 if( request.getParameter( "bildTyp" ).equals( "tiff" ) )
33 {
34 try
35 {
36 Process proc = Runtime.getRuntime().exec( "C:\\Programme\\2JPEG\\2jpeg.exe s=\"" + tiffPath +
37 "\" -nodlg -q75 -ov -log -prior2 -remsrc" );
38
39 BufferedReader br = new BufferedReader( new InputStreamReader( proc.getInputStream() ) );
40
41 int i = 0;
42 while( ( br.readLine() ) != null )
43 {
44 i += 1;
45 Thread.currentThread().sleep( 100 );
46 if( i > 600 )
47 {
48 break;
49 }
50 }
51 }
52 catch( IOException ex )
53 {
54 status = 1;
55 }
56 catch( InterruptedException iex )
57 {
58 status = 1;
59 }
60 }
61 else
62 {
63 try
64 {
65 Process proc = Runtime.getRuntime().exec( "C:\\Programme\\2JPEG\\2jpeg.exe s=\"" + tiffPath +
66 "\" -nodlg -q99 -ov -log -prior2 -remsrc" );
67
68 BufferedReader br = new BufferedReader( new InputStreamReader( proc.getInputStream() ) );
69
70 int i = 0;
71 while( ( br.readLine() ) != null )
72 {
73 i += 1;
74 Thread.currentThread().sleep( 100 );
75 if( i > 600 )
76 {
77 break;
78 }
79 }
80 }
81 catch( IOException ex )
82 {
83 status = 1;
84 }
85 catch( InterruptedException iex )
86 {
87 status = 1;
88 }
89 }
90 response.setContentType( CONTENT_TYPE );
91 response.setHeader( "status", String.valueOf( status ) );
92 PrintWriter out = response.getWriter();
93 out.write( status );
94 }
95
96 public void destroy()
97 {
98 }
99 }
100