Closed
Description
GraphQlArgumentBinder
has supports populating a nested object structure, as long as target objects use constructor injection. For objects with a default constructor, and getters/setters, we use DataBinder
. This has led to cases where we can fix an issue for constructor injection, where we have target type info handy, but can't do the same with the DataBinder
, see #447 (comment) and #449 (comment). There are also other issues that are more challenging to address like #140 (comment) with this approach.
We already have the ability to bind a raw value from the argument map, also by nesting as needed, and should be able to scale back the use of DataBinder
and only use a BeanWrapper
to inspect a target property as well as to set it.