dods.servlet.jake
Class ProxyServlet

java.lang.Object
  extended by HttpServlet
      extended by dods.servlet.jake.DispatchServlet
          extended by dods.servlet.jake.ProxyServlet

public class ProxyServlet
extends DispatchServlet

Proxy servlet. This servlet searches its parameter list for a server URL which matches the first component of the path, and if it finds one, acts as a proxy for DODS requests on the remote server. This can be used by DODS applet clients to bypass the default applet security restrictions, which only allow an applet to connect to the host from which they are downloaded.

Note: to use this servlet, you'll need to add servlet parameters of the form: manta=http://manta.jpl.nasa.gov/cgi-bin/nph-hdf

This will convert a URL of the form:
http://machine/servlets/proxy/manta/foo.hdf
to:
http://manta.jpl.nasa.gov/cgi-bin/nph-hdf/foo.hdf

Version:
$Revision: 1.2 $
Author:
jehamby
See Also:
DispatchServlet

Constructor Summary
ProxyServlet()
           
 
Method Summary
 void getDAS(HttpServletRequest req, HttpServletResponse res, String path, String ce)
          Get the DODS DAS.
 void getData(HttpServletRequest req, HttpServletResponse res, String path, String ce, boolean compress)
          Get the DODS Dataset.
 void getDDS(HttpServletRequest req, HttpServletResponse res, String path, String ce)
          Get the DODS DDS.
 
Methods inherited from class dods.servlet.jake.DispatchServlet
doGet
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ProxyServlet

public ProxyServlet()
Method Detail

getDAS

public void getDAS(HttpServletRequest req,
                   HttpServletResponse res,
                   String path,
                   String ce)
            throws ServletException,
                   IOException
Get the DODS DAS.

Specified by:
getDAS in class DispatchServlet
Parameters:
req - the HttpServletRequest to use
res - the HttpServletResponse to use
path - the DODS file path in the URL
ce - the DODS constraint expression in the URL
Throws:
IOException - if detected when handling the request
ServletException - if the request could not be handled

getDDS

public void getDDS(HttpServletRequest req,
                   HttpServletResponse res,
                   String path,
                   String ce)
            throws ServletException,
                   IOException
Get the DODS DDS.

Specified by:
getDDS in class DispatchServlet
Parameters:
req - the HttpServletRequest to use
res - the HttpServletResponse to use
path - the DODS file path in the URL
ce - the DODS constraint expression in the URL
Throws:
IOException - if detected when handling the request
ServletException - if the request could not be handled

getData

public void getData(HttpServletRequest req,
                    HttpServletResponse res,
                    String path,
                    String ce,
                    boolean compress)
             throws ServletException,
                    IOException
Get the DODS Dataset.

Specified by:
getData in class DispatchServlet
Parameters:
req - the HttpServletRequest to use
res - the HttpServletResponse to use
path - the DODS file path in the URL
ce - the DODS constraint expression in the URL
compress - whether to compress the DODS output
Throws:
IOException - if detected when handling the request
ServletException - if the request could not be handled