From f157772be9a3be9ad1f631c2ac92f2fc56249eb0 Mon Sep 17 00:00:00 2001 From: Jim Speakman Date: Tue, 13 Dec 2022 14:34:21 +0000 Subject: [PATCH] Avoid Java 17 unfriendly log synchronization The GSON serialization in logger.debug("Network Response :\n" + json.serialize(response.headers())); fails under Java 17 runtime, due to reflection access controls on the core JDK classes --- src/main/java/Invokers/ApiClient.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/Invokers/ApiClient.java b/src/main/java/Invokers/ApiClient.java index 1126a96bc..fa39ff851 100644 --- a/src/main/java/Invokers/ApiClient.java +++ b/src/main/java/Invokers/ApiClient.java @@ -1200,8 +1200,10 @@ public ApiResponse execute(Call call, Type returnType) throws ApiExceptio Response response = call.execute(); responseCode = String.valueOf(response.code()); status = response.message(); - - logger.debug("Network Response :\n" + json.serialize(response.headers())); + + if (logger.isDebugEnabled()) { + logger.debug("Network Response :\n" + json.serialize(response.headers())); + } if(returnType == new TypeToken< Model.AccessTokenResponse >(){}.getType()) { logger.debug("Response :\n" + response.peekBody(Long.MAX_VALUE).string());