I have implemented a configuration class in Kotlin to read values from application.properties
to have configurable values in the Spring Boot 2.2.2-RELEASE application.
package com.foo.bar.configuration
@ConfigurationProperties(prefix = "com.foo.bar.data.xyzmanagement")
class XyzManagementConfig {
var pAssignment: PAssignment = PAssignment()
var tAssignment: TAssignment = TAssignment()
class PAssignment {
var duration: Long = 10L
}
class TAssignment {
var duration: Long = 10L
}
}
In my application.properties I have amongst others:
# Configurable default values
com.foo.bar.data.xyzmanagement.pAssignment.duration=15
com.foo.bar.data.xyzmanagement.tAssignment.duration=15
I already have tried to annotate the main class with
@ConfigurationPropertiesScan(
{
"com.foo.bar.configuration"
})
as suggested from Baeldung: Guide to @ConfigurationProperties in Spring Boot
The problem is that the value 15 from application.properties is not read but instead the default value 10L is used.