-
Feature Request
-
Resolution: Unresolved
-
Major
-
None
-
None
-
None
-
---
-
---
Just an idea I had while writing https://github.com/wildfly/wildfly/pull/18837/files#r2023647678...
The MP Config subsystem can provide an ExpressionResolverExtension (https://github.com/wildfly/wildfly-core/blob/main/controller/src/main/java/org/jboss/as/controller/extension/ExpressionResolverExtension.java) a la what the elytron subsystem does. This would allow use of MP Config ConfigSources as the resolution source for standalone.xml values, as well as deployment descriptor and deployment annotation values for descriptors and annotations where we support ExpressionResolver-backed resolution of expressions.
This is non-trivial and there's a lot to consider, e.g. it's not useful for attributes that are resolved on Host Controller. And probably many other things.
A non-trivial aspect that for sure needs to be considered up front are the mechanics of ensuring runtime services are available when the first expression needs to be resolved, which can easily be before the normal installation of Stage.RUNTIME services by the MP Config subsystem. See the Elytron subsystem for how that was done. If it's not cleanly doable here for all the relevant resources we should reject this idea.
Note that using ConfigSources packaged in deployments is not the intent here, even if this were used for resolving deployment descriptor or annotation expressions. The complete set of ConfigSources must be fixed from the time the first expression is resolved.