Thanks! To be clear, the behavior should be: required=false does _not_ work for CDI, because of underlying constraints.
Optional<T> _does_ work with CDI, as an alternative. Correct? ajs6f > On Oct 19, 2018, at 4:02 AM, Anatole Tresch <[email protected]> wrote: > > Writing a test case would be awesome. Good travels! Anatole > > ajs6f <[email protected]> schrieb am Fr., 19. Okt. 2018, 02:11: > >> Glad to: https://issues.apache.org/jira/browse/TAMAYA-358 >> >> I hope that is clear-- let me know if not. I can try to write a test case. >> (Traveling for the next week or so, so after that.) >> >> ajs6f >> >>> On Oct 18, 2018, at 7:56 PM, Anatole Tresch <[email protected]> wrote: >>> >>> I consider this is a bug, can you file one ? Would be awesome ! >>> >>> Am Fr., 19. Okt. 2018 um 01:04 Uhr schrieb ajs6f <[email protected]>: >>> >>>> I'm afraid that didn't quite work (no change in behavior). >>>> >>>> Did I correctly understand you to mean this? >>>> >>>> @Inject >>>> @Config(value = { "trellis.configFile", "TRELLIS_CONFIG_FILE" }) >>>> private Optional<File> configFile; >>>> >>>> I've also tried it with required=false: >>>> >>>> @Inject >>>> @Config(value = { "trellis.configFile", "TRELLIS_CONFIG_FILE" }, >>>> required = false) >>>> private Optional<File> configFile; >>>> >>>> with the same behavior... >>>> >>>> ajs6f >>>> >>>>> On Oct 18, 2018, at 6:02 PM, Anatole Tresch <[email protected]> >> wrote: >>>>> >>>>> the problem is that CDI dies not support optional values in this way, >>>> this >>>>> works in a non cdi env e.g. Spring, osgi.... What should work is >>>> injecting >>>>> an Optional<File>. >>>>> >>>>> ajs6f <[email protected]> schrieb am Do., 18. Okt. 2018, 17:51: >>>>> >>>>>> Hi, Tamaya folks! >>>>>> >>>>>> I just tried using the required=false attribute of >>>>>> o.a.t.inject.api.Config, on a field, with a CDI project, a la: >>>>>> >>>>>> @Inject >>>>>> @Config(value = { "trellis.configFile", "TRELLIS_CONFIG_FILE" }, >>>> required >>>>>> = false) >>>>>> private File configFile; >>>>>> >>>>>> Unfortunately, it didn't seem to make the value truly optional. I got >>>> the >>>>>> expectable: >>>>>> >>>>>> org.apache.tamaya.ConfigException: Cannot resolve any of the possible >>>>>> configuration keys: [trellis.configFile, TRELLIS_CONFIG_FILE]. Please >>>>>> provide one of the given keys with a value in your configuration >>>> sources. >>>>>> >>>>>> Is required=false supported in that position, or am I misunderstanding >>>> its >>>>>> semantics? >>>>>> >>>>>> Thanks! >>>>>> >>>>>> ajs6f >>>>>> >>>>>> >>>> >>>> >>> >>> -- >>> *Anatole Tresch* >>> PPMC Member Apache Tamaya >>> JCP Star Spec Lead >>> *Switzerland, Europe Zurich, GMT+1* >>> *maketechsimple.wordpress.com <http://maketechsimple.wordpress.com/> * >>> *Twitter: @atsticks, @tamayaconf* >>> >>> *Speaking at:* >>> >>> [image: JSD_Speaker_2017][image: J-Con 2017 logo][image: JVM Con] >> >>
