PersistenceAnnotationBeanPostProcessor obtains default EntityManagerFactory via getBean(Class) algorithm

Issue: SPR-7549
This commit is contained in:
Juergen Hoeller
2016-08-11 22:42:06 +02:00
parent eeeab27f1f
commit 6157fad91f
7 changed files with 205 additions and 92 deletions

View File

@@ -31,6 +31,7 @@ import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.beans.factory.config.AutowireCapableBeanFactory;
import org.springframework.beans.factory.config.DependencyDescriptor;
import org.springframework.beans.factory.config.NamedBeanHolder;
import org.springframework.beans.factory.support.StaticListableBeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
@@ -393,12 +394,17 @@ class StubWebApplicationContext implements WebApplicationContext {
}
@Override
public Object resolveDependency(DependencyDescriptor descriptor, String beanName) {
public <T> NamedBeanHolder<T> resolveNamedBean(Class<T> requiredType) throws BeansException {
throw new UnsupportedOperationException("Dependency resolution not supported");
}
@Override
public Object resolveDependency(DependencyDescriptor descriptor, String beanName,
public Object resolveDependency(DependencyDescriptor descriptor, String requestingBeanName) {
throw new UnsupportedOperationException("Dependency resolution not supported");
}
@Override
public Object resolveDependency(DependencyDescriptor descriptor, String requestingBeanName,
Set<String> autowiredBeanNames, TypeConverter typeConverter) {
throw new UnsupportedOperationException("Dependency resolution not supported");
}