I'm migrating my application from Spring Boot 1.5 to 2.0 and one of the YAML properties no longer loads correctly. The following configuration snippet:
myapp
serviceUrls:
'https://example.org/test': 'https://test.example.org/Endpoint'
is mapped to this configuration class:
@ConfigurationProperties(prefix = "myapp", ignoreUnknownFields = false)
public final class MyAppProperties {
private Map<String, String> serviceUrls = new HashMap<>();
//[...]
}
- With Spring Boot 1.5, it loads as a map with
https://example.org/test
->https://test.example.org/Endpoint
; - but with Spring Boot 2.0, the colons and slashes disappear from map keys
httpsexample.orgtest
->https://test.example.org/Endpoint
.
I couldn't find any mention of this in the migration guide. Has YAML parsing changed in Spring Boot 2? Is there a better way to write YAML maps with URLs as keys?