X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Fdav%2FDavHttpHandler.java;h=b5cd289a111f8f3b3907fc60208ad64c9d2f4778;hb=5724ab347ddfba8f2b21cdcc2fa0b8e1e2b4e527;hp=9fd03f25abb5cfd735cc712ea8938864df4d0b93;hpb=54df376a9c2dd458a82eaa09bfbb718fe699dd0d;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 9fd03f25a..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,10 +10,11 @@ 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.HttpServerUtils; import org.argeo.cms.http.HttpStatus; +import org.argeo.cms.http.server.HttpServerUtils; import com.sun.net.httpserver.HttpExchange; import com.sun.net.httpserver.HttpHandler; @@ -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); }