ResolvableType-based resolution uses BeanNamesByType cache if possible

Issue: SPR-17282
This commit is contained in:
Juergen Hoeller
2018-09-18 15:30:43 +02:00
parent 00a3afcda8
commit c634b2fae7
3 changed files with 54 additions and 28 deletions

View File

@@ -453,7 +453,13 @@ public class DefaultListableBeanFactory extends AbstractAutowireCapableBeanFacto
@Override
public String[] getBeanNamesForType(ResolvableType type) {
return doGetBeanNamesForType(type, true, true);
Class<?> resolved = type.resolve();
if (resolved != null && !type.hasGenerics()) {
return getBeanNamesForType(resolved, true, true);
}
else {
return doGetBeanNamesForType(type, true, true);
}
}
@Override