У меня есть компонент Spring, который имеет внутренний класс.Все члены загружаются из файла YAML.
Когда этот компонент используется в другой конфигурации, я вижу, что внутренний класс не инициализирован.
Код:
@Component
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonInclude(Include.NON_NULL)
@ConfigurationProperties(prefix = "company")
public class Company {
@JsonProperty("connectTimeout")
private Integer connectTimeout;
@JsonProperty("dept1")
private Department library;
@JsonProperty("dept2")
private Department admin;
//Getters and Setters
@SuppressWarnings({"PublicInnerClass", "WeakerAccess"})
public static class Department {
@JsonProperty("connectTimeout")
private Integer connectTimeout;
//Getters and Setters
}
}
Когда компонент Company используется в другой конфигурации во время запуска, я вижу, что connectTimeout
нормально загружается как 1000, но library
и admin
отображаются как ноль.
Файл YAMLкак показано ниже
company:
connectTimeout: 1000
dept1:
connectTimeout: 100
dept2:
connectTimeout: 100