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

ilgrosso pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cxf.git


The following commit(s) were added to refs/heads/main by this push:
     new 0dca7da44a Allow JDK23 compatibility for Subject#getSubject (#1972)
0dca7da44a is described below

commit 0dca7da44a34858592243622d6d67329a0a46f79
Author: Francesco Chicchiriccò <[email protected]>
AuthorDate: Wed Jul 17 16:41:07 2024 +0200

    Allow JDK23 compatibility for Subject#getSubject (#1972)
---
 .../apache/cxf/ext/logging/event/DefaultLogEventMapper.java | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git 
a/rt/features/logging/src/main/java/org/apache/cxf/ext/logging/event/DefaultLogEventMapper.java
 
b/rt/features/logging/src/main/java/org/apache/cxf/ext/logging/event/DefaultLogEventMapper.java
index dd7897d45a..2e77c8df64 100644
--- 
a/rt/features/logging/src/main/java/org/apache/cxf/ext/logging/event/DefaultLogEventMapper.java
+++ 
b/rt/features/logging/src/main/java/org/apache/cxf/ext/logging/event/DefaultLogEventMapper.java
@@ -141,9 +141,16 @@ public class DefaultLogEventMapper {
     }
 
     private Iterator<? extends Object> getJAASPrincipals() {
-        Subject subject = Subject.getSubject(AccessController.getContext());
-        return subject != null && subject.getPrincipals() != null
-            ? subject.getPrincipals().iterator() : Collections.emptyIterator();
+        try {
+            Subject subject = 
Subject.getSubject(AccessController.getContext());
+            return subject != null && subject.getPrincipals() != null
+                    ? subject.getPrincipals().iterator() : 
Collections.emptyIterator();
+        } catch (UnsupportedOperationException e) {
+            // JDK 23: The terminally deprecated method 
Subject.getSubject(AccessControlContext) has been re-specified
+            // to throw UnsupportedOperationException if invoked when a 
Security Manager is not allowed.
+            // see https://jdk.java.net/23/release-notes#JDK-8296244
+            return Collections.emptyIterator();
+        }
     }
 
     private Map<String, String> getHeaders(Message message) {

Reply via email to