Hello,
when updating one of my applications from Spring Boot 3.5.0 to 3.5.1/3.5.2 a few testcases started to fail when loading Configuration Properties in my integration tests. It seems that when a configuration property is defined as list it does not work anymore.
I have a Configuration Property like this:
@Getter
@Setter
@Configuration
@NoArgsConstructor
@AllArgsConstructor
@ConfigurationProperties("openstack.server.os")
public class OpenStackServerOs {
private List<Template> templates;
/** Configuration Property for Templates */
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
public static class Template {
private String name;
private boolean isDefault;
private List<OperatingSystem> operatingSystem;
private TemplateType type;
private List<CloudInitFile> files;
}
public enum TemplateType {
YML,
MULTI_PART
}
/** Configuration Property for Files */
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
public static class CloudInitFile {
private String filename;
private String contentType;
public String getFile() {
return filename.substring(filename.lastIndexOf('/') + 1);
}
}
}
This code worked so far without issues, but now causes errors. I created a small demo project - https://github.com/dietzsch/demo. When running with Spring Boot 3.5.0 the test is successful, with 3.5.1/3.5.2 is causing an error.
Alex
Comment From: philwebb
I get a 404 clicking on https://github.com/dietzsch/demo
Comment From: philwebb
@dietzsch I think this is a duplicate of #46039. We're working on another release that should be out in the next few hours.
Comment From: philwebb
@ch4mpy Did you just make and delete a comment on this issue. I was just trying to build https://github.com/ch4mpy/spring-addons but now I can't find the comment that led me to it.
Comment From: ch4mpy
Yes, I deleted it after I realised that the project kept crashing because of my attempts to hack around the regression.
Very sorry about that.
Comment From: philwebb
No worries. Quite a relief actually after all the pain of yesterdays releases :)