diff --git a/webserver/http2/src/main/java/io/helidon/webserver/http2/Http2ServerStream.java b/webserver/http2/src/main/java/io/helidon/webserver/http2/Http2ServerStream.java index 0228afc361f..9defa45ff0c 100644 --- a/webserver/http2/src/main/java/io/helidon/webserver/http2/Http2ServerStream.java +++ b/webserver/http2/src/main/java/io/helidon/webserver/http2/Http2ServerStream.java @@ -312,23 +312,16 @@ public void run() { // gather error handling properties ErrorHandling errorHandling = ctx.listenerContext() .config() - .errorHandling() - .orElse(null); - boolean includeEntity = false; - boolean logAllMessages = false; - if (errorHandling != null) { - includeEntity = errorHandling.includeEntity(); - logAllMessages = errorHandling.logAllMessages(); - } + .errorHandling(); // log message in DEBUG mode - if (LOGGER.isLoggable(DEBUG) && (e.safeMessage() || logAllMessages)) { + if (LOGGER.isLoggable(DEBUG) && (e.safeMessage() || errorHandling.logAllMessages())) { LOGGER.log(DEBUG, e); } // create message to return based on settings String message = null; - if (includeEntity) { + if (errorHandling.includeEntity()) { message = e.safeMessage() ? e.getMessage() : "Bad request, see server log for more information"; } diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/ListenerConfigBlueprint.java b/webserver/webserver/src/main/java/io/helidon/webserver/ListenerConfigBlueprint.java index 653ce6fcf89..e47ea89681e 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/ListenerConfigBlueprint.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/ListenerConfigBlueprint.java @@ -403,8 +403,9 @@ default void configureSocket(ServerSocket socket) { /** * Configuration for this listener's error handling. * - * @return optional error handling + * @return error handling */ @Option.Configured - Optional errorHandling(); + @Option.DefaultMethod("create") + ErrorHandling errorHandling(); } diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/http1/Http1Connection.java b/webserver/webserver/src/main/java/io/helidon/webserver/http1/Http1Connection.java index f480a55b00e..7019fcf49d3 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/http1/Http1Connection.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/http1/Http1Connection.java @@ -648,23 +648,16 @@ private void handleRequestException(RequestException e) { // gather error handling properties ErrorHandling errorHandling = ctx.listenerContext() .config() - .errorHandling() - .orElse(null); - boolean includeEntity = false; - boolean logAllMessages = false; - if (errorHandling != null) { - includeEntity = errorHandling.includeEntity(); - logAllMessages = errorHandling.logAllMessages(); - } + .errorHandling(); // log message in DEBUG mode - if (LOGGER.isLoggable(DEBUG) && (e.safeMessage() || logAllMessages)) { + if (LOGGER.isLoggable(DEBUG) && (e.safeMessage() || errorHandling.logAllMessages())) { LOGGER.log(DEBUG, e); } // create message to return based on settings String message = null; - if (includeEntity) { + if (errorHandling.includeEntity()) { message = e.safeMessage() ? e.getMessage() : "Bad request, see server log for more information"; }