From 41b0b0b1f695830681ef8f57f0974c022de241c1 Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Thu, 1 Nov 2018 11:45:51 +0300 Subject: custom http error handler --- .../src/main/java/com/juick/server/ActivityPubManager.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'juick-server/src/main/java/com/juick/server/ActivityPubManager.java') diff --git a/juick-server/src/main/java/com/juick/server/ActivityPubManager.java b/juick-server/src/main/java/com/juick/server/ActivityPubManager.java index 41dd52eb..692d1107 100644 --- a/juick-server/src/main/java/com/juick/server/ActivityPubManager.java +++ b/juick-server/src/main/java/com/juick/server/ActivityPubManager.java @@ -17,11 +17,14 @@ import com.juick.service.component.*; import com.juick.util.MessageUtils; import com.mitchellbosecke.pebble.PebbleEngine; import com.mitchellbosecke.pebble.template.PebbleTemplate; +import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.client.ClientHttpResponse; import org.springframework.stereotype.Component; +import org.springframework.web.client.DefaultResponseErrorHandler; import org.springframework.web.util.UriComponentsBuilder; import javax.annotation.Nonnull; @@ -31,6 +34,7 @@ import java.io.IOException; import java.io.StringWriter; import java.io.Writer; import java.net.URI; +import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; @@ -313,4 +317,12 @@ public class ActivityPubManager implements ActivityListener, NotificationListene } }); } + + public static class ErrorHandler extends DefaultResponseErrorHandler { + @Override + public void handleError(ClientHttpResponse response) throws IOException { + logger.warn("HTTP ERROR {} {} : {}", response.getStatusCode().value(), + response.getStatusText(), IOUtils.toString(response.getBody(), StandardCharsets.UTF_8)); + } + } } -- cgit v1.2.3