I'm using the latest snapshots of boot 3 and i'm seeing that a bean with two constructors, that we've specifed using XML and the <constructor-arg>
element, doesn't get invoked. the default-no arg constructor does.
if i run the same code again on the JRE (ignoring AOT), then it works as expected, invoking the constructor that takes a String
I put together a reproducer here
Comment From: snicoll
Thanks for the sample. The problem is that <constructor-arg>
is registering a "generic" argument value, rather than an indexed argument value. AOT only supports the latter. To support the former, we'd have to massage the constructor to identify a matching argument.
Comment From: snicoll
Changing the XML code to use an indexed argument does not work either, see #29074.
Comment From: snicoll
So this turned out to be a duplicate of #27920. The example was useful as it gave us additional ideas, namely pre-converting generic arguments.