diff --git a/configuration-metadata/spring-boot-configuration-metadata/src/main/java/org/springframework/boot/configurationmetadata/ConfigurationMetadataRepositoryJsonBuilder.java b/configuration-metadata/spring-boot-configuration-metadata/src/main/java/org/springframework/boot/configurationmetadata/ConfigurationMetadataRepositoryJsonBuilder.java index 5041d3a4fcd..b4dd8a13e31 100644 --- a/configuration-metadata/spring-boot-configuration-metadata/src/main/java/org/springframework/boot/configurationmetadata/ConfigurationMetadataRepositoryJsonBuilder.java +++ b/configuration-metadata/spring-boot-configuration-metadata/src/main/java/org/springframework/boot/configurationmetadata/ConfigurationMetadataRepositoryJsonBuilder.java @@ -33,7 +33,7 @@ import java.util.Map; */ public final class ConfigurationMetadataRepositoryJsonBuilder { - private Charset defaultCharset = StandardCharsets.UTF_8; + private final Charset defaultCharset; private final JsonReader reader = new JsonReader(); @@ -91,11 +91,14 @@ public final class ConfigurationMetadataRepositoryJsonBuilder { return result; } - private SimpleConfigurationMetadataRepository add(InputStream in, Charset charset) { + private SimpleConfigurationMetadataRepository add(InputStream in, Charset charset) throws IOException { try { RawConfigurationMetadata metadata = this.reader.read(in, charset); return create(metadata); } + catch (IOException ex) { + throw ex; + } catch (Exception ex) { throw new IllegalStateException("Failed to read configuration metadata", ex); }