registered plain singletons will be fully matched according to their qualifiers; "systemProperties" bean is not considered a default match for type Properties anymore (SPR-5355)

This commit is contained in:
Juergen Hoeller
2009-02-09 22:06:07 +00:00
parent 6086bb37e7
commit 5a04ed502b
3 changed files with 11 additions and 5 deletions

View File

@@ -41,4 +41,6 @@
</qualifier>
</bean>
</beans>
<bean id="testProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean"/>
</beans>

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2002-2008 the original author or authors.
* Copyright 2002-2009 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.
@@ -24,6 +24,7 @@ import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.util.Properties;
import org.junit.Test;
import org.springframework.beans.factory.BeanCreationException;
@@ -82,6 +83,7 @@ public final class QualifierAnnotationTests {
QualifiedByBeanNameTestBean testBean = (QualifiedByBeanNameTestBean) context.getBean("testBean");
Person person = testBean.getLarry();
assertEquals("LarryBean", person.getName());
assertTrue(testBean.myProps != null && testBean.myProps.isEmpty());
}
@Test
@@ -192,6 +194,9 @@ public final class QualifierAnnotationTests {
@Autowired @Qualifier("larryBean")
private Person larry;
@Autowired @Qualifier("testProperties")
public Properties myProps;
public Person getLarry() {
return larry;
}