From 501cbf54ab6df7f2c2af5649b9446dcaf68e4c7a Mon Sep 17 00:00:00 2001 From: Hirohisa Yamaguchi Date: Sat, 4 Jul 2020 15:07:34 +0900 Subject: [PATCH] fix TLS/SSL LDAP under IBM JVM (#2472) Co-authored-by: Hirohisa Yamaguchi --- src/main/scala/gitbucket/core/util/LDAPUtil.scala | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main/scala/gitbucket/core/util/LDAPUtil.scala b/src/main/scala/gitbucket/core/util/LDAPUtil.scala index 3fd8c9da1..623170fee 100644 --- a/src/main/scala/gitbucket/core/util/LDAPUtil.scala +++ b/src/main/scala/gitbucket/core/util/LDAPUtil.scala @@ -127,8 +127,14 @@ object LDAPUtil { private def getSslProvider(): Provider = { val cachedInstance = provider.get() if (cachedInstance == null) { - val newInstance = Class - .forName("com.sun.net.ssl.internal.ssl.Provider") + val cls = try { + Class.forName("com.sun.net.ssl.internal.ssl.Provider") + } catch { + case e: ClassNotFoundException => + Class.forName("com.ibm.jsse.IBMJSSEProvider") + case e: Throwable => throw e + } + val newInstance = cls .getDeclaredConstructor() .newInstance() .asInstanceOf[Provider]