Klassen des Pakets AstroIX: Zur Doku-Startseite Zurück zur Homepage

Klasse Proxy

Javadoc von Proxy   Proxy.java herunterladen

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 );
          }

  }

}

Zum Seitenanfang Lizenzbedingungen Der Quellcode wird mit dem GNU source-highlight 1.7 dargestellt