From 8b76103d265067e00233b6d023e3cea880f0df4b Mon Sep 17 00:00:00 2001 From: Nikita Koksharov Date: Wed, 26 Apr 2023 10:56:44 +0300 Subject: [PATCH] Fixed - error during Yaml configuration parsing isn't reported. #4985 --- .../org/redisson/hibernate/RedissonRegionFactory.java | 6 ++++-- .../org/redisson/hibernate/RedissonRegionFactory.java | 6 ++++-- .../org/redisson/hibernate/RedissonRegionFactory.java | 6 ++++-- .../org/redisson/hibernate/RedissonRegionFactory.java | 6 ++++-- .../org/redisson/hibernate/RedissonRegionFactory.java | 6 ++++-- .../src/main/java/org/redisson/JndiRedissonFactory.java | 3 ++- redisson/src/main/java/org/redisson/RedissonNode.java | 8 ++++---- .../redisson/spring/cache/RedissonSpringCacheManager.java | 5 +++-- 8 files changed, 29 insertions(+), 17 deletions(-) diff --git a/redisson-hibernate/redisson-hibernate-4/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java b/redisson-hibernate/redisson-hibernate-4/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java index 1a56e73be..5d04bf238 100644 --- a/redisson-hibernate/redisson-hibernate-4/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java +++ b/redisson-hibernate/redisson-hibernate-4/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java @@ -116,7 +116,8 @@ public class RedissonRegionFactory implements RegionFactory { try { return Config.fromJSON(new File(configPath)); } catch (IOException e1) { - throw new CacheException("Can't parse default yaml config", e1); + e1.addSuppressed(e); + throw new CacheException("Can't parse default config", e1); } } } @@ -131,7 +132,8 @@ public class RedissonRegionFactory implements RegionFactory { is = classLoader.getResourceAsStream(fileName); return Config.fromJSON(is); } catch (IOException e1) { - throw new CacheException("Can't parse yaml config", e1); + e1.addSuppressed(e); + throw new CacheException("Can't parse config", e1); } } } diff --git a/redisson-hibernate/redisson-hibernate-5/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java b/redisson-hibernate/redisson-hibernate-5/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java index 3c1489783..de7638b3f 100644 --- a/redisson-hibernate/redisson-hibernate-5/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java +++ b/redisson-hibernate/redisson-hibernate-5/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java @@ -123,7 +123,8 @@ import java.util.concurrent.atomic.AtomicLong; try { return Config.fromJSON(new File(configPath)); } catch (IOException e1) { - throw new CacheException("Can't parse default yaml config", e1); + e1.addSuppressed(e); + throw new CacheException("Can't parse default config", e1); } } } @@ -138,7 +139,8 @@ import java.util.concurrent.atomic.AtomicLong; is = classLoader.getResourceAsStream(fileName); return Config.fromJSON(is); } catch (IOException e1) { - throw new CacheException("Can't parse yaml config", e1); + e1.addSuppressed(e); + throw new CacheException("Can't parse config", e1); } } } diff --git a/redisson-hibernate/redisson-hibernate-52/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java b/redisson-hibernate/redisson-hibernate-52/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java index cef8722fd..765a94a69 100644 --- a/redisson-hibernate/redisson-hibernate-52/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java +++ b/redisson-hibernate/redisson-hibernate-52/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java @@ -124,7 +124,8 @@ public class RedissonRegionFactory implements RegionFactory { try { return Config.fromJSON(new File(configPath)); } catch (IOException e1) { - throw new CacheException("Can't parse default yaml config", e1); + e1.addSuppressed(e); + throw new CacheException("Can't parse default config", e1); } } } @@ -139,7 +140,8 @@ public class RedissonRegionFactory implements RegionFactory { is = classLoader.getResourceAsStream(fileName); return Config.fromJSON(is); } catch (IOException e1) { - throw new CacheException("Can't parse yaml config", e1); + e1.addSuppressed(e); + throw new CacheException("Can't parse config", e1); } } } diff --git a/redisson-hibernate/redisson-hibernate-53/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java b/redisson-hibernate/redisson-hibernate-53/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java index 57c320665..934477e8d 100644 --- a/redisson-hibernate/redisson-hibernate-53/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java +++ b/redisson-hibernate/redisson-hibernate-53/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java @@ -124,7 +124,8 @@ public class RedissonRegionFactory extends RegionFactoryTemplate { try { return Config.fromJSON(new File(configPath)); } catch (IOException e1) { - throw new CacheException("Can't parse default yaml config", e1); + e1.addSuppressed(e); + throw new CacheException("Can't parse default config", e1); } } } @@ -139,7 +140,8 @@ public class RedissonRegionFactory extends RegionFactoryTemplate { is = classLoader.getResourceAsStream(fileName); return Config.fromJSON(is); } catch (IOException e1) { - throw new CacheException("Can't parse yaml config", e1); + e1.addSuppressed(e); + throw new CacheException("Can't parse config", e1); } } } diff --git a/redisson-hibernate/redisson-hibernate-6/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java b/redisson-hibernate/redisson-hibernate-6/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java index dd9406926..8fb381b0b 100644 --- a/redisson-hibernate/redisson-hibernate-6/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java +++ b/redisson-hibernate/redisson-hibernate-6/src/main/java/org/redisson/hibernate/RedissonRegionFactory.java @@ -125,7 +125,8 @@ public class RedissonRegionFactory extends RegionFactoryTemplate { try { return Config.fromJSON(new File(configPath)); } catch (IOException e1) { - throw new CacheException("Can't parse default yaml config", e1); + e1.addSuppressed(e); + throw new CacheException("Can't parse default config", e1); } } } @@ -140,7 +141,8 @@ public class RedissonRegionFactory extends RegionFactoryTemplate { is = classLoader.getResourceAsStream(fileName); return Config.fromJSON(is); } catch (IOException e1) { - throw new CacheException("Can't parse yaml config", e1); + e1.addSuppressed(e); + throw new CacheException("Can't parse config", e1); } } } diff --git a/redisson/src/main/java/org/redisson/JndiRedissonFactory.java b/redisson/src/main/java/org/redisson/JndiRedissonFactory.java index 609a5e6e9..ef6b7ca2d 100644 --- a/redisson/src/main/java/org/redisson/JndiRedissonFactory.java +++ b/redisson/src/main/java/org/redisson/JndiRedissonFactory.java @@ -54,7 +54,8 @@ public class JndiRedissonFactory implements ObjectFactory { try { config = Config.fromJSON(new File(configPath), getClass().getClassLoader()); } catch (IOException e1) { - NamingException ex = new NamingException("Can't parse yaml config " + configPath); + NamingException ex = new NamingException("Can't parse config " + configPath); + e1.addSuppressed(e); ex.initCause(e1); throw ex; } diff --git a/redisson/src/main/java/org/redisson/RedissonNode.java b/redisson/src/main/java/org/redisson/RedissonNode.java index 815c8dd57..2b037aa0b 100644 --- a/redisson/src/main/java/org/redisson/RedissonNode.java +++ b/redisson/src/main/java/org/redisson/RedissonNode.java @@ -88,14 +88,14 @@ public final class RedissonNode { String configPath = args[0]; RedissonNodeFileConfig config = null; try { - config = RedissonNodeFileConfig.fromJSON(new File(configPath)); + config = RedissonNodeFileConfig.fromYAML(new File(configPath)); } catch (IOException e) { // trying next format try { - config = RedissonNodeFileConfig.fromYAML(new File(configPath)); + config = RedissonNodeFileConfig.fromJSON(new File(configPath)); } catch (IOException e1) { - log.error("Can't parse json config {}", configPath, e); - throw new IllegalArgumentException("Can't parse yaml config " + configPath, e1); + e1.addSuppressed(e); + throw new IllegalArgumentException("Can't parse config " + configPath, e1); } } diff --git a/redisson/src/main/java/org/redisson/spring/cache/RedissonSpringCacheManager.java b/redisson/src/main/java/org/redisson/spring/cache/RedissonSpringCacheManager.java index f366b1305..8c82be90a 100644 --- a/redisson/src/main/java/org/redisson/spring/cache/RedissonSpringCacheManager.java +++ b/redisson/src/main/java/org/redisson/spring/cache/RedissonSpringCacheManager.java @@ -298,12 +298,13 @@ public class RedissonSpringCacheManager implements CacheManager, ResourceLoaderA Resource resource = resourceLoader.getResource(configLocation); try { - this.configMap = (Map) CacheConfig.fromJSON(resource.getInputStream()); + this.configMap = (Map) CacheConfig.fromYAML(resource.getInputStream()); } catch (IOException e) { // try to read yaml try { - this.configMap = (Map) CacheConfig.fromYAML(resource.getInputStream()); + this.configMap = (Map) CacheConfig.fromJSON(resource.getInputStream()); } catch (IOException e1) { + e1.addSuppressed(e); throw new BeanDefinitionStoreException( "Could not parse cache configuration at [" + configLocation + "]", e1); }