You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-dev@jakarta.apache.org by di...@apache.org on 2001/12/23 17:00:33 UTC
cvs commit: jakarta-slide/src/webdav/server/org/apache/slide/webdav WebdavServlet.java
dirkv 01/12/23 08:00:33
Modified: src/webdav/server/org/apache/slide/webdav WebdavServlet.java
Log:
make request/response logging code more robust
(see also bug 5578)
Revision Changes Path
1.30 +67 -46 jakarta-slide/src/webdav/server/org/apache/slide/webdav/WebdavServlet.java
Index: WebdavServlet.java
===================================================================
RCS file: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/WebdavServlet.java,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- WebdavServlet.java 2001/10/11 05:52:15 1.29
+++ WebdavServlet.java 2001/12/23 16:00:33 1.30
@@ -1,7 +1,7 @@
/*
- * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/WebdavServlet.java,v 1.29 2001/10/11 05:52:15 remm Exp $
- * $Revision: 1.29 $
- * $Date: 2001/10/11 05:52:15 $
+ * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/WebdavServlet.java,v 1.30 2001/12/23 16:00:33 dirkv Exp $
+ * $Revision: 1.30 $
+ * $Date: 2001/12/23 16:00:33 $
*
* ====================================================================
*
@@ -109,7 +109,7 @@
*
* @author <a href="mailto:remm@apache.org">Remy Maucherat</a>
* @author Dirk Verbeeck
- * @version $Revision: 1.29 $
+ * @version $Revision: 1.30 $
*/
public class WebdavServlet extends HttpServlet {
@@ -237,16 +237,23 @@
// if logging for the request/response is required initialise the
// facades
- if (token.getLogger().isEnabled
- ("org.apache.slide.webdav.WebdavServlet.requestResponseLogger",
- Logger.DEBUG)) {
- if (req != null)
- req = new XHttpServletRequestFacade(req);
- if (resp != null)
- resp = new XHttpServletResponseFacade(resp);
- } else {
- if (resp != null)
- resp = new XHttpServletResponseSimpleFacade(resp);
+ try
+ {
+ if (token.getLogger().isEnabled
+ ("org.apache.slide.webdav.WebdavServlet.requestResponseLogger",
+ Logger.DEBUG)) {
+ if (req != null)
+ req = new XHttpServletRequestFacade(req);
+ if (resp != null)
+ resp = new XHttpServletResponseFacade(resp);
+ } else {
+ if (resp != null)
+ resp = new XHttpServletResponseSimpleFacade(resp);
+ }
+ }
+ catch (Throwable ex)
+ {
+ // ignore logging errors
}
resp.setStatus(WebdavStatus.SC_OK);
@@ -268,47 +275,61 @@
// if logging for the request/response is required
// perform the logging
- if (token.getLogger().isEnabled
- ("org.apache.slide.webdav.WebdavServlet.requestResponseLogger",
- Logger.DEBUG)) {
- XMLTestCaseGenerator xmlGen = new XMLTestCaseGenerator
- ((XHttpServletRequestFacade)req,
- (XHttpServletResponseFacade)resp);
- xmlGen.setThreadName(Thread.currentThread().getName());
+ try
+ {
+ if (token.getLogger().isEnabled
+ ("org.apache.slide.webdav.WebdavServlet.requestResponseLogger",
+ Logger.DEBUG)) {
+ XMLTestCaseGenerator xmlGen = new XMLTestCaseGenerator
+ ((XHttpServletRequestFacade)req,
+ (XHttpServletResponseFacade)resp);
+ xmlGen.setThreadName(Thread.currentThread().getName());
+ token.getLogger().log
+ (xmlGen.toString(),
+ "org.apache.slide.webdav.WebdavServlet.requestResponseLogger",
+ Logger.DEBUG);
+ }
+ }
+ catch (Throwable ex)
+ {
+ // ignore logging errors
+ }
+
+ try
+ {
token.getLogger().log
- (xmlGen.toString(),
- "org.apache.slide.webdav.WebdavServlet.requestResponseLogger",
- Logger.DEBUG);
+ (req.getMethod()
+ + ( (resp instanceof XHttpServletResponseFacade)
+ ? (" = " + ((XHttpServletResponseFacade)resp)
+ .getStatus()
+ + " " + (WebdavStatus.getStatusText
+ (((XHttpServletResponseFacade)resp)
+ .getStatus())))
+ : (" = " + ((XHttpServletResponseSimpleFacade)resp)
+ .getStatus()
+ + " " + (WebdavStatus.getStatusText
+ (((XHttpServletResponseSimpleFacade)resp)
+ .getStatus()))) )
+ + " (time: " + (System.currentTimeMillis() - startTime)
+ + " ms)"
+ + " URI = "
+ + WebdavUtils.getRelativePath
+ (req, (WebdavServletConfig)getServletConfig()),
+ LOG_CHANNEL, Logger.INFO);
}
-
- token.getLogger().log
- (req.getMethod()
- + ( (resp instanceof XHttpServletResponseFacade)
- ? (" = " + ((XHttpServletResponseFacade)resp)
- .getStatus()
- + " " + (WebdavStatus.getStatusText
- (((XHttpServletResponseFacade)resp)
- .getStatus())))
- : (" = " + ((XHttpServletResponseSimpleFacade)resp)
- .getStatus()
- + " " + (WebdavStatus.getStatusText
- (((XHttpServletResponseSimpleFacade)resp)
- .getStatus()))) )
- + " (time: " + (System.currentTimeMillis() - startTime)
- + " ms)"
- + " URI = "
- + WebdavUtils.getRelativePath
- (req, (WebdavServletConfig)getServletConfig()),
- LOG_CHANNEL, Logger.INFO);
+ catch (Throwable ex)
+ {
+ // ignore logging errors
+ }
} catch (WebdavException e) {
// There has been an error somewhere ...
- resp.sendError(e.getStatusCode());
token.getLogger().log(e,LOG_CHANNEL, Logger.ERROR);
+ try { resp.sendError(e.getStatusCode()); } catch (Throwable ex) { }
} catch (Throwable e) {
// If something goes really wrong ...
- resp.sendError(WebdavStatus.SC_INTERNAL_SERVER_ERROR);
token.getLogger().log(e,LOG_CHANNEL, Logger.ERROR);
+ try { resp.sendError(WebdavStatus.SC_INTERNAL_SERVER_ERROR); } catch (Throwable ex) { }
}
}
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>