X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Fdav%2FDavHttpHandler.java;h=b5cd289a111f8f3b3907fc60208ad64c9d2f4778;hb=2e4eb39468ca952109a7bb8ad6e5eaf417923e17;hp=63f4f82c7574b5d936fdeb1336bfd7296f758cbf;hpb=bd515365c78edfdabc700f31f29629455bbe2b86;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/dav/DavHttpHandler.java b/org.argeo.cms/src/org/argeo/cms/dav/DavHttpHandler.java index 63f4f82c7..b5cd289a1 100644 --- a/org.argeo.cms/src/org/argeo/cms/dav/DavHttpHandler.java +++ b/org.argeo.cms/src/org/argeo/cms/dav/DavHttpHandler.java @@ -10,6 +10,7 @@ import java.util.function.Consumer; import javax.xml.namespace.NamespaceContext; import org.argeo.api.acr.ContentNotFoundException; +import org.argeo.api.cms.CmsLog; import org.argeo.cms.http.HttpHeader; import org.argeo.cms.http.HttpMethod; import org.argeo.cms.http.HttpStatus; @@ -24,6 +25,7 @@ import com.sun.net.httpserver.HttpHandler; * ACR-specific code more readable and maintainable. */ public abstract class DavHttpHandler implements HttpHandler { + private final static CmsLog log = CmsLog.getLog(DavHttpHandler.class); @Override public void handle(HttpExchange exchange) throws IOException { @@ -60,10 +62,12 @@ public abstract class DavHttpHandler implements HttpHandler { exchange.sendResponseHeaders(HttpStatus.NOT_FOUND.getCode(), -1); } // TODO return a structured error message + // TODO better filter application errors and failed login etc. catch (UnsupportedOperationException e) { e.printStackTrace(); exchange.sendResponseHeaders(HttpStatus.NOT_IMPLEMENTED.getCode(), -1); } catch (Exception e) { + log.error("Failed HTTP exchange " + exchange.getRequestURI(), e); exchange.sendResponseHeaders(HttpStatus.INTERNAL_SERVER_ERROR.getCode(), -1); }