Retain support for legacy PostConstruct/PreDestroy/Inject variants

Also removes JAX-WS support from CommonAnnotationBeanPostProcessor.

Closes gh-27444
See gh-27422
This commit is contained in:
Juergen Hoeller
2021-09-21 17:07:42 +02:00
parent 6976bf774b
commit 774583dfa7
7 changed files with 92 additions and 183 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2002-2020 the original author or authors.
* Copyright 2002-2021 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -61,7 +61,7 @@ public class ClassPathBeanDefinitionScannerTests {
GenericApplicationContext context = new GenericApplicationContext();
ClassPathBeanDefinitionScanner scanner = new ClassPathBeanDefinitionScanner(context);
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(12);
assertThat(beanCount).isGreaterThanOrEqualTo(12);
assertThat(context.containsBean("serviceInvocationCounter")).isTrue();
assertThat(context.containsBean("fooServiceImpl")).isTrue();
assertThat(context.containsBean("stubFooDao")).isTrue();
@@ -110,7 +110,7 @@ public class ClassPathBeanDefinitionScannerTests {
ClassPathBeanDefinitionScanner scanner = new ClassPathBeanDefinitionScanner(context);
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(12);
assertThat(beanCount).isGreaterThanOrEqualTo(12);
ClassPathBeanDefinitionScanner scanner2 = new ClassPathBeanDefinitionScanner(context) {
@Override
@@ -138,7 +138,7 @@ public class ClassPathBeanDefinitionScannerTests {
ClassPathBeanDefinitionScanner scanner = new ClassPathBeanDefinitionScanner(context);
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(12);
assertThat(beanCount).isGreaterThanOrEqualTo(12);
assertThat(context.containsBean("serviceInvocationCounter")).isTrue();
assertThat(context.containsBean("fooServiceImpl")).isTrue();
@@ -157,7 +157,7 @@ public class ClassPathBeanDefinitionScannerTests {
ClassPathBeanDefinitionScanner scanner = new ClassPathBeanDefinitionScanner(context);
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(12);
assertThat(beanCount).isGreaterThanOrEqualTo(12);
ClassPathBeanDefinitionScanner scanner2 = new ClassPathBeanDefinitionScanner(context) {
@Override
@@ -182,7 +182,7 @@ public class ClassPathBeanDefinitionScannerTests {
ClassPathBeanDefinitionScanner scanner = new ClassPathBeanDefinitionScanner(context);
scanner.setIncludeAnnotationConfig(false);
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(7);
assertThat(beanCount).isGreaterThanOrEqualTo(7);
assertThat(context.containsBean("serviceInvocationCounter")).isTrue();
assertThat(context.containsBean("fooServiceImpl")).isTrue();
@@ -222,7 +222,7 @@ public class ClassPathBeanDefinitionScannerTests {
scanner.setIncludeAnnotationConfig(false);
int scannedBeanCount = scanner.scan(BASE_PACKAGE);
assertThat(scannedBeanCount).isEqualTo(6);
assertThat(scannedBeanCount).isGreaterThanOrEqualTo(6);
assertThat(context.getBeanDefinitionCount()).isEqualTo((initialBeanCount + scannedBeanCount));
assertThat(context.containsBean("serviceInvocationCounter")).isTrue();
assertThat(context.containsBean("fooServiceImpl")).isTrue();
@@ -242,7 +242,7 @@ public class ClassPathBeanDefinitionScannerTests {
scanner.setIncludeAnnotationConfig(false);
int scannedBeanCount = scanner.scan(BASE_PACKAGE);
assertThat(scannedBeanCount).isEqualTo(6);
assertThat(scannedBeanCount).isGreaterThanOrEqualTo(6);
assertThat(context.getBeanDefinitionCount()).isEqualTo((initialBeanCount + scannedBeanCount));
assertThat(context.containsBean("serviceInvocationCounter")).isTrue();
assertThat(context.containsBean("fooServiceImpl")).isTrue();
@@ -281,7 +281,7 @@ public class ClassPathBeanDefinitionScannerTests {
scanner.addIncludeFilter(new AnnotationTypeFilter(CustomComponent.class));
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(6);
assertThat(beanCount).isGreaterThanOrEqualTo(6);
assertThat(context.containsBean("messageBean")).isTrue();
assertThat(context.containsBean(AnnotationConfigUtils.AUTOWIRED_ANNOTATION_PROCESSOR_BEAN_NAME)).isTrue();
assertThat(context.containsBean(AnnotationConfigUtils.COMMON_ANNOTATION_PROCESSOR_BEAN_NAME)).isTrue();
@@ -296,7 +296,7 @@ public class ClassPathBeanDefinitionScannerTests {
scanner.addIncludeFilter(new AnnotationTypeFilter(CustomComponent.class));
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(6);
assertThat(beanCount).isGreaterThanOrEqualTo(6);
assertThat(context.containsBean("messageBean")).isTrue();
assertThat(context.containsBean("serviceInvocationCounter")).isFalse();
assertThat(context.containsBean("fooServiceImpl")).isFalse();
@@ -316,7 +316,7 @@ public class ClassPathBeanDefinitionScannerTests {
scanner.addIncludeFilter(new AnnotationTypeFilter(CustomComponent.class));
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(13);
assertThat(beanCount).isGreaterThanOrEqualTo(13);
assertThat(context.containsBean("messageBean")).isTrue();
assertThat(context.containsBean("serviceInvocationCounter")).isTrue();
assertThat(context.containsBean("fooServiceImpl")).isTrue();
@@ -336,7 +336,7 @@ public class ClassPathBeanDefinitionScannerTests {
scanner.addExcludeFilter(new AnnotationTypeFilter(Aspect.class));
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(11);
assertThat(beanCount).isGreaterThanOrEqualTo(11);
assertThat(context.containsBean("serviceInvocationCounter")).isFalse();
assertThat(context.containsBean("fooServiceImpl")).isTrue();
assertThat(context.containsBean("stubFooDao")).isTrue();
@@ -354,7 +354,7 @@ public class ClassPathBeanDefinitionScannerTests {
scanner.addExcludeFilter(new AssignableTypeFilter(FooService.class));
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(11);
assertThat(beanCount).isGreaterThanOrEqualTo(11);
assertThat(context.containsBean("fooServiceImpl")).isFalse();
assertThat(context.containsBean("serviceInvocationCounter")).isTrue();
assertThat(context.containsBean("stubFooDao")).isTrue();
@@ -374,7 +374,7 @@ public class ClassPathBeanDefinitionScannerTests {
scanner.addExcludeFilter(new AssignableTypeFilter(FooService.class));
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(6);
assertThat(beanCount).isGreaterThanOrEqualTo(6);
assertThat(context.containsBean("fooServiceImpl")).isFalse();
assertThat(context.containsBean("serviceInvocationCounter")).isTrue();
assertThat(context.containsBean("stubFooDao")).isTrue();
@@ -392,7 +392,7 @@ public class ClassPathBeanDefinitionScannerTests {
scanner.addExcludeFilter(new AnnotationTypeFilter(Aspect.class));
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(10);
assertThat(beanCount).isGreaterThanOrEqualTo(10);
assertThat(context.containsBean("fooServiceImpl")).isFalse();
assertThat(context.containsBean("serviceInvocationCounter")).isFalse();
assertThat(context.containsBean("stubFooDao")).isTrue();
@@ -411,7 +411,7 @@ public class ClassPathBeanDefinitionScannerTests {
scanner.setBeanNameGenerator(new TestBeanNameGenerator());
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(12);
assertThat(beanCount).isGreaterThanOrEqualTo(12);
assertThat(context.containsBean("fooServiceImpl")).isFalse();
assertThat(context.containsBean("fooService")).isTrue();
assertThat(context.containsBean("serviceInvocationCounter")).isTrue();
@@ -431,7 +431,7 @@ public class ClassPathBeanDefinitionScannerTests {
GenericApplicationContext multiPackageContext = new GenericApplicationContext();
ClassPathBeanDefinitionScanner multiPackageScanner = new ClassPathBeanDefinitionScanner(multiPackageContext);
int singlePackageBeanCount = singlePackageScanner.scan(BASE_PACKAGE);
assertThat(singlePackageBeanCount).isEqualTo(12);
assertThat(singlePackageBeanCount).isGreaterThanOrEqualTo(12);
multiPackageScanner.scan(BASE_PACKAGE, "org.springframework.dao.annotation");
// assertTrue(multiPackageBeanCount > singlePackageBeanCount);
}
@@ -442,7 +442,7 @@ public class ClassPathBeanDefinitionScannerTests {
ClassPathBeanDefinitionScanner scanner = new ClassPathBeanDefinitionScanner(context);
int initialBeanCount = context.getBeanDefinitionCount();
int scannedBeanCount = scanner.scan(BASE_PACKAGE);
assertThat(scannedBeanCount).isEqualTo(12);
assertThat(scannedBeanCount).isGreaterThanOrEqualTo(12);
assertThat((context.getBeanDefinitionCount() - initialBeanCount)).isEqualTo(scannedBeanCount);
int addedBeanCount = scanner.scan("org.springframework.aop.aspectj.annotation");
assertThat(context.getBeanDefinitionCount()).isEqualTo((initialBeanCount + scannedBeanCount + addedBeanCount));
@@ -455,7 +455,7 @@ public class ClassPathBeanDefinitionScannerTests {
ClassPathBeanDefinitionScanner scanner = new ClassPathBeanDefinitionScanner(context);
scanner.setBeanNameGenerator(new TestBeanNameGenerator());
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(12);
assertThat(beanCount).isGreaterThanOrEqualTo(12);
context.refresh();
FooServiceImpl fooService = context.getBean("fooService", FooServiceImpl.class);
@@ -485,7 +485,7 @@ public class ClassPathBeanDefinitionScannerTests {
scanner.setIncludeAnnotationConfig(false);
scanner.setBeanNameGenerator(new TestBeanNameGenerator());
int beanCount = scanner.scan(BASE_PACKAGE);
assertThat(beanCount).isEqualTo(7);
assertThat(beanCount).isGreaterThanOrEqualTo(7);
context.refresh();
try {