2010-12-17 8 views
2

Bei der Arbeit haben wir ein benutzerdefiniertes ServiceProvider-Muster mit einer Annotation für Bindungsdienste mit einem Federpostprozessor.Federpostprozessoren, Bestellung, @Required

Ich frage mich, ob ich überprüfen kann, ob meine Bindung richtig gemacht wurde, indem Sie @Required verwenden.

Die Bindung wird nicht von Spring durchgeführt (weder Xml noch Autowiring).

Ich denke, wenn es möglich ist, hat die Postprozessor-Reihenfolge einige Bedeutung (Federprüfung erforderlich sollte nach unserem benutzerdefinierten Bindungsprozessor verarbeitet werden).

Kann mir jemand sagen, ob es möglich ist und wie?

+0

Ich bin nicht sicher, dass Sie '@ Required' dafür verwenden können, da es nur nach Eigenschaftswerten sucht, die als Teil der Bean-Definition (ich denke) nicht programmgesteuert gesetzt werden. – skaffman

Antwort

2

RequiredAnnotationBeanPostProcessor ist ein PriorityOrdered mit Bestellwert Integer.MAX_VALUE - 1. Daher muss Ihr Postprozessor PriorityOrdered mit dem niedrigeren Bestellwert implementieren, der vor RequiredAnnotationBeanPostProcessor ausgelöst werden soll.

+0

danke wird das sehen;) –