From a763382c3ef4b5905e98c0cda9646141458bc355 Mon Sep 17 00:00:00 2001 From: Marcus Da Coregio Date: Tue, 11 Jan 2022 08:24:49 -0300 Subject: [PATCH] Make source code compatible with JDK 8 Closes gh-10695 --- build.gradle | 2 ++ .../web/configurers/saml2/Saml2LoginConfigurer.java | 3 +-- .../web/configurers/NamespaceHttpX509Tests.java | 12 +++++------- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/build.gradle b/build.gradle index f3ab98b083..bb04847c3f 100644 --- a/build.gradle +++ b/build.gradle @@ -106,6 +106,8 @@ subprojects { } tasks.withType(JavaCompile) { options.encoding = "UTF-8" + options.compilerArgs.add("-parameters") + options.release = 8 } } diff --git a/config/src/main/java/org/springframework/security/config/annotation/web/configurers/saml2/Saml2LoginConfigurer.java b/config/src/main/java/org/springframework/security/config/annotation/web/configurers/saml2/Saml2LoginConfigurer.java index a44e880d75..dc2ed60826 100644 --- a/config/src/main/java/org/springframework/security/config/annotation/web/configurers/saml2/Saml2LoginConfigurer.java +++ b/config/src/main/java/org/springframework/security/config/annotation/web/configurers/saml2/Saml2LoginConfigurer.java @@ -276,8 +276,7 @@ public final class Saml2LoginConfigurer> if (version != null) { return version; } - return Version.class.getModule().getDescriptor().version().map(Object::toString) - .orElseThrow(() -> new IllegalStateException("cannot determine OpenSAML version")); + return Version.getVersion(); } private void registerDefaultAuthenticationProvider(B http) { diff --git a/config/src/test/java/org/springframework/security/config/annotation/web/configurers/NamespaceHttpX509Tests.java b/config/src/test/java/org/springframework/security/config/annotation/web/configurers/NamespaceHttpX509Tests.java index 06df9f2e0f..e2a7b3a901 100644 --- a/config/src/test/java/org/springframework/security/config/annotation/web/configurers/NamespaceHttpX509Tests.java +++ b/config/src/test/java/org/springframework/security/config/annotation/web/configurers/NamespaceHttpX509Tests.java @@ -21,11 +21,13 @@ import java.security.cert.Certificate; import java.security.cert.CertificateFactory; import java.security.cert.X509Certificate; +import javax.security.auth.x500.X500Principal; import javax.servlet.http.HttpServletRequest; +import org.bouncycastle.asn1.x500.X500Name; +import org.bouncycastle.asn1.x500.style.BCStyle; import org.junit.Rule; import org.junit.Test; -import sun.security.x509.X500Name; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; @@ -239,12 +241,8 @@ public class NamespaceHttpX509Tests { } private String extractCommonName(X509Certificate certificate) { - try { - return ((X500Name) certificate.getSubjectDN()).getCommonName(); - } - catch (Exception ex) { - throw new IllegalArgumentException(ex); - } + X500Principal principal = certificate.getSubjectX500Principal(); + return new X500Name(principal.getName()).getRDNs(BCStyle.CN)[0].getFirst().getValue().toString(); } }