[jboss-jira] [JBoss JIRA] (WFWIP-55) Default value defined on injection point of List and Set fields is not taken into account
Jeff Mesnil (JIRA)
issues at jboss.org
Tue Jul 17 05:48:00 EDT 2018
[ https://issues.jboss.org/browse/WFWIP-55?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13606058#comment-13606058 ]
Jeff Mesnil commented on WFWIP-55:
----------------------------------
Default value for injected collection is fixed in https://github.com/smallrye/smallrye-config/pull/10
I'll check with MicroProfile Config to clarify the behaviour of array and collections in the absence of configured and default value.
> Default value defined on injection point of List and Set fields is not taken into account
> -----------------------------------------------------------------------------------------
>
> Key: WFWIP-55
> URL: https://issues.jboss.org/browse/WFWIP-55
> Project: WildFly WIP
> Issue Type: Bug
> Components: MP Config
> Reporter: Petr Kremensky
> Assignee: Jeff Mesnil
>
> Assume we define a following injection points:
> {code:java}
> @Inject
> @ConfigProperty(name = "myPets", defaultValue = "horse,monkey")
> private String[] myArrayPets;
> @Inject
> @ConfigProperty(name = "myPets", defaultValue = "cat,lama")
> private List<String> myListPets;
> @Inject
> @ConfigProperty(name = "myPets", defaultValue = "dog,mouse")
> private Set<String> mySetPets;
> {code}
> Passing a -DmyPets=snake,ox property work as expected:
> {noformat}
> myArrayPets : [snake,ox]
> myListPets : [snake,ox]
> mySetPets : [snake,ox]
> {noformat}
> but trying to use the defults I get:
> {noformat}
> myArrayPets : [horse,monkey]
> myListPets : <empty list>
> mySetPets : <empty set>
> {noformat}
> defaults are not applied to List and Set fields, no exception is thrown.
> Another inconsistency between Array and Set+List I run into is behaviour on missing property (myPets is not set):
> *Array*
> {code:java}
> @Inject
> @ConfigProperty(name = "myPets")
> private String[] myArrayPets;
> >>>
> 08:34:05,178 ERROR [stderr] (MSC service thread 1-2) org.jboss.weld.exceptions.DeploymentException: Error while validating Configuration
> 08:34:05,178 ERROR [stderr] (MSC service thread 1-2) No Config Value exists for myPets
> myArrayPets : [org.eclipse.microprofile.config.configproperty.unconfigureddvalue]
> {code}
> *Set, List*
> {code:java}
> @Inject
> @ConfigProperty(name = "myPets")
> private List<String> myListPets;
> @Inject
> @ConfigProperty(name = "myPets")
> private Set<String> mySetPets;
> >>>
> no errors
> myListPets : <empty list>
> mySetPets : <empty set>
> {code}
> https://microprofile.io/project/eclipse/microprofile-config/spec/src/main/asciidoc/converters.asciidoc
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
More information about the jboss-jira
mailing list