Hi Roberto,
I was now able to isolate the problem. It is because the implicit default value in the @ConfigProperty annotation no longer works. It would work again with the following setting
@ConfigProperty(defaultValue = "")
Maybe I have used the converter for purposes other than intended. Here is a simplified example
microprofile-config.properties
sys_1.p1 = x1
sys_1.p2 = y1
sys_1.p3 = z1
sys_2.p1 = x2
sys_2.p2 = y2
sys_2.p3 = z2
...
sys_n.p1 = xn
sys_n.p2 = yn
sys_n.p3 = zn
@Inject
@ConfigProperty
MyObject myObj;
myObj.get("sys_1").getP1();
myObj.get("sys_2").getP1();
myObj.get("sys_n").getP1();
The value in the ConfigProperty is irrelevant here. I should probably use the converter in the following form
@Inject
@ConfigProperty(name="mo")
MyObject myObj;
microprofile-config.properties
mo = sys_1.p1=x1, sys_1.p2=y1, sys_1.p3=z1 | sys_2.p1=x2, sys_2.p2=y2, sys_2.p3=z2 | sys_n.p1=xn, sys_n.p2=yn, sys_n.p3=zn
Unfortunately, this is not a clear representation, especially if the real values are entered. And furthermore, I no longer have the option of overwriting individual values, e.g. sys_2.p1 = q
Maybe it's better if I work with a CDI producer here.
Greetings
Markus