spring-projects / spring-projects/spring-boot
Allow fine-grain control of the getters/setters considered in @ConfigurationProperties
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 81.5k
- Forks
- 42.7k
- Avg merge
- 2d 4h
- Merged PRs (30d)
- 65
Description
See #34309 for background.
Currently our @ConfigurationProperties only considers getter/setter combinations when generating meta-data. The binder is a little more lenient and can bind to beans that only have setters.
It would be helpful if users could indicate that certain setters without getters should be included. It would also be helpful to be able to exclude properties that have getters/setters that can't actually be set in application.properties. For example SimpleMessageListenerContainer generates meta-data that includes connection-factory of type org.springframework.amqp.rabbit.connection.ConnectionFactory.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading issue #34309 for the background, then trace how @ConfigurationProperties metadata is generated compared with binder behavior. Define how users would include setter-only properties and exclude properties that cannot be set from application.properties, including the SimpleMessageListenerContainer example.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, spring-boot
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100