diff --git a/ehcache-impl/src/main/java/org/ehcache/config/builders/UserManagedCacheBuilder.java b/ehcache-impl/src/main/java/org/ehcache/config/builders/UserManagedCacheBuilder.java index 887b618b12..312cf47b3b 100644 --- a/ehcache-impl/src/main/java/org/ehcache/config/builders/UserManagedCacheBuilder.java +++ b/ehcache-impl/src/main/java/org/ehcache/config/builders/UserManagedCacheBuilder.java @@ -271,11 +271,6 @@ public void close() throws Exception { valueSerializer = valueSer; } } catch (UnsupportedTypeException e) { - if (resources.contains(OFFHEAP) || resources.contains(DISK)) { - throw new RuntimeException(e); - } else { - LOGGER.debug("Serializers for cache '{}' failed creation ({}). However, depending on the configuration, they might not be needed", id, e.getMessage()); - } } } @@ -570,7 +565,14 @@ public final UserManagedCacheBuilder withEventListeners(CacheEventListe */ public final UserManagedCacheBuilder withResourcePools(ResourcePools resourcePools) { UserManagedCacheBuilder otherBuilder = new UserManagedCacheBuilder<>(this); + Set> resources=resourcePools.getResourceTypeSet(); otherBuilder.resourcePools = resourcePools; + if (resources.contains(OFFHEAP) || resources.contains(DISK)) { + LOGGER.debug("Runtime Exception found"); + } else { + LOGGER.debug("Could not create Serializers for user Managed cache"); + LOGGER.debug("Serializers for cache failed creation. However, depending on the configuration, they might not be needed"); + } return otherBuilder; } @@ -584,6 +586,13 @@ public final UserManagedCacheBuilder withResourcePools(ResourcePools re * @see #withResourcePools(ResourcePools) */ public final UserManagedCacheBuilder withResourcePools(ResourcePoolsBuilder resourcePoolsBuilder) { + Set> resources1 = resourcePoolsBuilder.build().getResourceTypeSet(); + if (resources1.contains(OFFHEAP) || resources1.contains(DISK)) { + LOGGER.debug("Runtime Exception found"); + } else { + LOGGER.debug("Could not create Serializers for user Managed cache"); + LOGGER.debug("Serializers for cache failed creation. However, depending on the configuration, they might not be needed"); + } return withResourcePools(resourcePoolsBuilder.build()); }