Jason Terhune-Wold created GROOVY-8186: ------------------------------------------
Summary: Builder ExternalStrategy constructors have trouble with private fields Key: GROOVY-8186 URL: https://issues.apache.org/jira/browse/GROOVY-8186 Project: Groovy Issue Type: Bug Affects Versions: 2.4.x, 2.5.x Reporter: Jason Terhune-Wold Priority: Minor An undocumented feature of @Builder is that the builder's constructor can set default values for the fields. See http://stackoverflow.com/questions/35066664/default-values-in-groovy-builder-ast I tried creating an ExternalStrategy @Builder annotation for [BaseClientDetails|http://docs.spring.io/spring-security/oauth/apidocs/org/springframework/security/oauth2/provider/client/BaseClientDetails.html] with a constructor that set a default scope. I received a MissingMethodException exception, which I thought was odd. I added some tests to BuilderTransformTest that demonstrate apparent problems using the external builder in two situations: 1) A groovy class with private fields and manually defined setters. 2) A java class with a private Set field and a setter that takes a Collection The tests are here: https://github.com/jterhune/groovy/commit/5b2eb74cc8184235b5235b7fd4c80b241799bbc5 I noticed this in 2.4.x. My tests fail in the 2.5.x branch also. -- This message was sent by Atlassian JIRA (v6.3.15#6346)