package AstroIX; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.net.URL; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.PrintWriter; /** Einfaches Proxy-Servlet. Die aufzurufende URL muss im Request-Parameter "url" angegeben werden. Das Servlet führt dann diesen Request aus und gibt die Antwort für die Weiterverarbeitung im <code>text/plain</code> Format zurück. */ public class Proxy extends HttpServlet { private PrintWriter out = new PrintWriter( System.out ); public void doGet(HttpServletRequest request, HttpServletResponse response) { String line; try { response.setContentType("text/plain"); out = response.getWriter(); // URL abholen String urlString = request.getParameter( "url" ); if ((urlString == null)|| urlString.equals("")) out.println("Fehler: Keine URL angegeben!"); else { URL url = new URL( urlString ); BufferedReader in = new BufferedReader(new InputStreamReader( url.openStream() )); while ((line = in.readLine()) != null) out.println( line ); } // Alles abfangen } catch (Throwable t) { t.printStackTrace( out ); } } }