Supongamos que tengo interfaces, tales como las siguientes:¿Cómo se conecta AutoWire por su nombre cuando se encuentra más de un bean coincidente?
interface Country {}
class USA implements Country {}
class UK implements Country()
Y este fragmento de XML de configuración:
<bean class="USA"/>
<bean id="country" class="UK"/>
<bean id="main" class="Main"/>
¿Cómo puedo controlar lo que la dependencia se autowired abajo? Me gustaría el Reino Unido.
class Main {
private Country country;
@Autowired
public void setCountry(Country country) {
this.country = country;
}
}
Estoy usando Spring 3.0.3.RELEASE.
Pensé en agregar que estaba obteniendo un "No unique bean of type ..."en un entorno (de prueba) y funcionó bien en mi entorno de desarrollo. Estoy seguro de que fue una especie de classpath, pero resultó que, si agrega @Qualifier, funcionó bien. – markthegrea