Skip to content

Migrate @Import classes to use constructor injection - #51490

Open
piyushrajyadav wants to merge 1 commit into
spring-projects:mainfrom
piyushrajyadav:gh-18231
Open

Migrate @Import classes to use constructor injection#51490
piyushrajyadav wants to merge 1 commit into
spring-projects:mainfrom
piyushrajyadav:gh-18231

Conversation

@piyushrajyadav

Copy link
Copy Markdown

This PR migrates several @Import and ImportBeanDefinitionRegistrar classes from implementing BeanFactoryAware to using constructor injection for BeanFactory, following the guidance on #18231 and Spring Framework's support for constructor injection in @Import classes.

Changes Made

  • PrimaryDefaultValidatorPostProcessor: Replaced implements BeanFactoryAware and setBeanFactory(BeanFactory) with PrimaryDefaultValidatorPostProcessor(BeanFactory beanFactory) constructor injection.
  • ServletWebServerConfiguration.BeanPostProcessorsRegistrar: Replaced implements BeanFactoryAware and setBeanFactory(BeanFactory) with BeanPostProcessorsRegistrar(BeanFactory beanFactory) constructor injection.
  • ReactiveWebServerConfiguration.BeanPostProcessorsRegistrar: Replaced implements BeanFactoryAware and setBeanFactory(BeanFactory) with BeanPostProcessorsRegistrar(BeanFactory beanFactory) constructor injection.
  • IntegrationAutoConfigurationScanRegistrar: Replaced implements BeanFactoryAware and setBeanFactory(BeanFactory) with IntegrationAutoConfigurationScanRegistrar(BeanFactory beanFactory) constructor injection.

Verification

All modified modules were formatted using ./gradlew format and verified against Checkstyle and full unit/integration test suites:

  • :module:spring-boot-validation:test (PASSED)
  • :module:spring-boot-validation:checkstyleMain (PASSED)
  • :module:spring-boot-validation:checkstyleTest (PASSED)
  • :module:spring-boot-web-server:test (PASSED)
  • :module:spring-boot-web-server:checkstyleMain (PASSED)
  • :module:spring-boot-web-server:checkstyleTest (PASSED)
  • :module:spring-boot-integration:test (PASSED)
  • :module:spring-boot-integration:checkstyleMain (PASSED)
  • :module:spring-boot-integration:checkstyleTest (PASSED)

Closes #18231

Use constructor injection for BeanFactory in ImportBeanDefinitionRegistrar implementations instead of implementing BeanFactoryAware.

Closes spring-projectsgh-18231

Signed-off-by: piyushrajyadav <piyushyadavrajyadav@gmail.com>
@spring-projects-issues spring-projects-issues added the status: waiting-for-triage An issue we've not yet triaged label Aug 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

status: waiting-for-triage An issue we've not yet triaged

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Migrate @Import classes to use constructor injection

2 participants