diff --git a/core/src/main/java/org/infinispan/configuration/global/GlobalConfigurationBuilder.java b/core/src/main/java/org/infinispan/configuration/global/GlobalConfigurationBuilder.java
index <HASH>..<HASH> 100644
--- a/core/src/main/java/org/infinispan/configuration/global/GlobalConfigurationBuilder.java
+++ b/core/src/main/java/org/infinispan/configuration/global/GlobalConfigurationBuilder.java
@@ -33,7 +33,9 @@ public class GlobalConfigurationBuilder implements GlobalConfigurationChildBuild
 
    public GlobalConfigurationBuilder() {
       // In OSGi contexts the TCCL should not be used. Use the infinispan-core bundle as default instead.
-      ClassLoader defaultCL = Util.isOSGiContext() ? GlobalConfigurationBuilder.class.getClassLoader() : Thread.currentThread().getContextClassLoader();
+      ClassLoader defaultCL = null;
+      if (!Util.isOSGiContext()) defaultCL = Thread.currentThread().getContextClassLoader();
+      if (defaultCL == null) defaultCL = GlobalConfigurationBuilder.class.getClassLoader();
       this.cl = new WeakReference<ClassLoader>(defaultCL);
       this.transport = new TransportConfigurationBuilder(this);
       this.globalJmxStatistics = new GlobalJmxStatisticsConfigurationBuilder(this);
ISPN-<I> Resolve classes properly when Thread context classloader is null

If TCCL is null, fallback to ISPN classes classloader