В моем файле yaml для весенней загрузки есть следующая структура:
countryConfiguration:
NL:
address:
postcodeKeyboardType: ALPHANUMERIC
postcodeExample: 1111 AA
cityExample: Amsterdam
ES:
address:
postcodeKeyboardType: NUMERIC
postcodeExample: 11111
cityExample: Madrid
И я хочу создать класс свойств конфигурации для доступа к этим значениям.У меня есть что-то вроде этого:
@Configuration
@ConfigurationProperties
@Validated
public class CountryConfigurationProperties {
@NotNull
private Map<String, Configuration> countryConfiguration;
public Map<String, Configuration> getCountryConfiguration() {
return countryConfiguration;
}
public void setCountryConfiguration(Map<String, Configuration>
countryConfiguration) {
this.countryConfiguration = countryConfiguration;
}
public static class Configuration {
private Object address;
public Object getAddress() {
return address;
}
public void setAddress(Object address) {
this.address = address;
}
}
}
Но это не работает, я получаю это: Привязка к цели org.springframework.boot.context.properties.bind.BindException: Не удалось связать свойства в '' toio.bux.onboarding.application.config.CountryConfigurationProperties $$ EnhancerBySpringCGLIB $$ 1d9a5856 не удалось:
Property: .countryConfiguration
Value: null
Reason: must not be null
Если я удаляю статический внутренний класс Configuration и помещаю Object, он работает ...