Spring ignoriert @Qualifier in einem sehr einfachen Programm

8

Ich habe Kreisklasse:

%Vor%

Punktklasse:

%Vor%

Und mein Frühling xml:

%Vor%

Soweit es mich betrifft, sollte das so funktionieren: 1. Spring siehe @Autowire Annotation 2. Spring erkennt, dass es viele Beans vom Point-Typ gibt 3. Spring verwendet @Qualifier-Annotation, um zu ermitteln, welche Bean injiziert werden soll

Leider funktioniert es nicht so. Während der Ausführung:

%Vor%

Ich erhalte einen Fehler:

%Vor%

Ich bin Anfänger bei Spring-Thema, aber ich glaube @Qualifier Annotation sollte den Job tun und bestimmen, welche Bohne zu verwenden.

Startprotokoll: Ссылка

    
Marcin Majewski 15.12.2014, 23:09
quelle

2 Antworten

7

Sie müssen <context:annotation-config/> in Ihrer Spring-XML-Datei hinzufügen, anstatt die AutowiredAnnotationBeanPostProcessor zu instanziieren, da diese @Qualifier -Anmerkungen nicht verarbeitet.

Wenn Sie wirklich alles kontrollieren wollen, was in Ihrem Kontext instanziiert wird, schauen Sie sich die Kandidatenresolver für @Qualifier .

    
Costi Ciudatu 16.12.2014, 00:00
quelle
-3

Sie müssen Ihre Point center öffentlich machen:

public Point center;

Spring hat nur Zugriff auf öffentliche Eigenschaften und Methoden.

    
Yannick Wiesner 15.12.2014 23:18
quelle

Tags und Links