You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@knox.apache.org by bo...@apache.org on 2026/08/26 16:18:02 UTC

(knox) branch feature/jakarta-jetty-upgrade updated: KNOX-3238: correct TraceHandlerTest and ProxyWebSocketAdapter ssl setup

This is an automated email from the ASF dual-hosted git repository.

bonampak pushed a commit to branch feature/jakarta-jetty-upgrade
in repository https://gitbox.apache.org/repos/asf/knox.git


The following commit(s) were added to refs/heads/feature/jakarta-jetty-upgrade by this push:
     new 768cce917 KNOX-3238: correct TraceHandlerTest and ProxyWebSocketAdapter ssl setup
768cce917 is described below

commit 768cce9170e968953f724865c615fea4d9c613de
Author: bonampak <bo...@apache.org>
AuthorDate: Wed Aug 26 15:18:28 2026 +0200

    KNOX-3238: correct TraceHandlerTest and ProxyWebSocketAdapter ssl setup
---
 .../org/apache/knox/gateway/websockets/ProxyWebSocketAdapter.java  | 7 ++++++-
 .../test/java/org/apache/knox/gateway/trace/TraceHandlerTest.java  | 1 +
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/gateway-server/src/main/java/org/apache/knox/gateway/websockets/ProxyWebSocketAdapter.java b/gateway-server/src/main/java/org/apache/knox/gateway/websockets/ProxyWebSocketAdapter.java
index f9a5d5e8e..696a7c1a9 100644
--- a/gateway-server/src/main/java/org/apache/knox/gateway/websockets/ProxyWebSocketAdapter.java
+++ b/gateway-server/src/main/java/org/apache/knox/gateway/websockets/ProxyWebSocketAdapter.java
@@ -166,7 +166,12 @@ public class ProxyWebSocketAdapter extends Session.Listener.AbstractAutoDemandin
    */
   private WebSocketContainer buildBackendContainer() {
     SslContextFactory.Client sslContextFactory = new SslContextFactory.Client();
-    configureSsl(sslContextFactory, clientConfig);
+    // Only configure SSL from the client endpoint config when one was supplied.
+    // The non-SSL path uses the 3-arg constructor which leaves clientConfig null;
+    // guarding here avoids an NPE on connection open (see configureSsl).
+    if (clientConfig != null) {
+      configureSsl(sslContextFactory, clientConfig);
+    }
     HttpClient httpClient = new HttpClient();
     httpClient.setSslContextFactory(sslContextFactory);
     LOG.logMessage("Truststore for websocket setup");
diff --git a/gateway-server/src/test/java/org/apache/knox/gateway/trace/TraceHandlerTest.java b/gateway-server/src/test/java/org/apache/knox/gateway/trace/TraceHandlerTest.java
index 6b2665020..9031ec163 100644
--- a/gateway-server/src/test/java/org/apache/knox/gateway/trace/TraceHandlerTest.java
+++ b/gateway-server/src/test/java/org/apache/knox/gateway/trace/TraceHandlerTest.java
@@ -229,6 +229,7 @@ public class TraceHandlerTest {
     server.start();
 
     // enable request/response line loggers but leave body loggers OFF
+    setTraceLoggersLevel(Level.TRACE);
     LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
     Configuration config = ctx.getConfiguration();
     config.getLoggerConfig(TraceHandler.HTTP_REQUEST_BODY_LOGGER).setLevel(Level.OFF);