dfischer.femtowebserver.filter
Class HttpDebugFilter
java.lang.Object
|
+--dfischer.femtowebserver.httpd.HttpdFilter
|
+--dfischer.femtowebserver.filter.HttpDebugFilter
- public class HttpDebugFilter
- extends HttpdFilter
This filter writes all details of the HTTP requests and the HTTP responses to the log output.
Configuration Example:
...
...
Httpd httpdThread = new Httpd();
// configure femto web server
String serverName = "127.0.0.1";
try { serverName = InetAddress.getLocalHost().getHostName(); } catch (Exception ex) {}
httpdThread.setServerName(serverName);
httpdThread.setServerPort(80);
httpdThread.addFilter("dfischer.femtowebserver.filter.HttpDebugFilter");
...
...
Log Output Example:
13 May 2003 22:14:36.875 | fischer T000000 | -> dump(): GET / HTTP/1.1
13 May 2003 22:14:36.875 | fischer T000000 | -> dump(): Accept: */*
13 May 2003 22:14:36.875 | fischer T000000 | -> dump(): Accept-Language: de-ch
13 May 2003 22:14:36.875 | fischer T000000 | -> dump(): Accept-Encoding: gzip, deflate
13 May 2003 22:14:36.875 | fischer T000000 | -> dump(): User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
13 May 2003 22:14:36.875 | fischer T000000 | -> dump(): Host: www.d-fischer.com:83
13 May 2003 22:14:36.875 | fischer T000000 | -> dump(): Connection: Keep-Alive
13 May 2003 22:14:36.875 | fischer T000000 | 127.0.0.1 GET / 200
13 May 2003 22:14:36.875 | fischer T000000 | <- dump(): HTTP/1.0 200 OK
13 May 2003 22:14:36.875 | fischer T000000 | <- dump(): Server: Femto Web Server/1.4-A www.d-fischer.com
13 May 2003 22:14:36.875 | fischer T000000 | <- dump(): Content-Type: TEXT/HTML
13 May 2003 22:14:36.875 | fischer T000000 | <- dump(): Content-Length: 39
13 May 2003 22:14:36.875 | fischer T000000 | <- dump(): Connection: close
13 May 2003 22:14:36.875 | fischer T000000 | <- dump(): <HTML>
13 May 2003 22:14:36.875 | fischer T000000 | <- dump(): <BODY>
13 May 2003 22:14:36.875 | fischer T000000 | <- dump(): Hello
13 May 2003 22:14:36.875 | fischer T000000 | <- dump(): </BODY>
13 May 2003 22:14:36.875 | fischer T000000 | <- dump(): </HTML>
Sourcecode of Filter:
package dfischer.femtowebserver.filter;
import dfischer.femtowebserver.httpd.*;
public class HttpDebugFilter extends HttpdFilter
{
public void filterRequest(HttpRequest httpRequest, HttpResponse httpResponse) throws Exception
{
httpRequest.dump();
}
public void filterResponse(HttpRequest httpRequest, HttpResponse httpResponse) throws Exception
{
httpResponse.dump();
}
}
- See Also:
Httpd.setLogStream(java.io.PrintStream),
ContentCompressionFilter,
RestrictedInetAddressFilter,
HttpSessionCookieHandler,
HttpdFilter
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
HttpDebugFilter
public HttpDebugFilter()
filterRequest
public void filterRequest(HttpRequest httpRequest,
HttpResponse httpResponse)
throws java.lang.Exception
- Description copied from class:
HttpdFilter
- Allows filtering tasks on the HTTP request and to preset the HTTP response (at his time blank). Consider
that some or all parts of the HTTP response will later be overwritten when the (modified) request is processed
by the Femto Web Server.
- Overrides:
filterRequest in class HttpdFilter
- Following copied from class:
dfischer.femtowebserver.httpd.HttpdFilter
- Parameters:
httpRequest - The HTTP request data (browser request)HttpResponse - The HTTP response data (server response)- See Also:
HttpRequest.getSession(),
HttpRequest.setSession(dfischer.femtowebserver.httpd.HttpdSession),
HttpRequest.getRemoteAddress(),
HttpRequest.setRemoteAddress(java.lang.String),
HttpRequest.getVirtualHost(),
HttpRequest.setVirtualHost(java.lang.String),
HttpRequest.getVirtualPort(),
HttpRequest.setVirtualPort(int),
HttpRequest.getUserAgent(),
HttpRequest.setUserAgent(java.lang.String),
HttpRequest.getHeaderField(java.lang.String),
HttpRequest.addHeaderField(java.lang.String, java.lang.String),
HttpRequest.updateHeaderField(java.lang.String, java.lang.String),
HttpRequest.removeHeaderField(java.lang.String),
HttpRequest.getMethod(),
HttpRequest.setMethod(java.lang.String),
HttpRequest.getRequest(),
HttpRequest.setRequest(java.lang.String),
HttpRequest.getParameter(String),
HttpRequest.addParameter(java.lang.String, java.lang.String),
HttpRequest.updateParameter(java.lang.String, java.lang.String),
HttpRequest.removeParameter(java.lang.String),
HttpRequest.getContent(),
HttpRequest.setContent(byte[]),
HttpRequest.clearContent(),
HttpRequest.getContentType(),
HttpRequest.setContentType(java.lang.String),
HttpRequest.getContentSubtype(),
HttpRequest.setContentSubtype(java.lang.String)
filterResponse
public void filterResponse(HttpRequest httpRequest,
HttpResponse httpResponse)
throws java.lang.Exception
- Description copied from class:
HttpdFilter
- Allows filtering tasks on the HTTP response and to access the HTTP request. Consider
that modifying the HTTP request will have no impact to the HTTP response result because the request has been
already processed by the Femto Web Server.
- Overrides:
filterResponse in class HttpdFilter
- Following copied from class:
dfischer.femtowebserver.httpd.HttpdFilter
- Parameters:
httpRequest - The HTTP request data (browser request)HttpResponse - The HTTP response data (server response)- See Also:
HttpResponse.getSession(),
HttpResponse.setSession(dfischer.femtowebserver.httpd.HttpdSession),
HttpResponse.getStatus(),
HttpResponse.setStatus(int, java.lang.String),
HttpResponse.getContentType(),
HttpResponse.getContentSubtype(),
HttpResponse.setContentType(java.lang.String),
HttpResponse.getHeaderField(java.lang.String),
HttpResponse.getHeaderFieldNames(),
HttpResponse.updateHeaderField(java.lang.String, java.lang.String),
HttpResponse.addHeaderField(java.lang.String, java.lang.String),
HttpResponse.removeHeaderField(java.lang.String),
HttpResponse.getContent(),
HttpResponse.getContentAsString(),
HttpResponse.setContent(byte[]),
HttpResponse.clearContent(),
HttpResponse.print(String),
HttpResponse.println(String)
Copyright 2002, 2003, 2006 by Ingenieurbüro David Fischer GmbH, Switzerland. All rights reserved.