ich eine serviceActivator definiert:wählen überladene Methode in Service-Aktivator (Frühlings-Integration)
<integration:service-activator input-channel="sampleChannel"
ref="sampleImpl" method="remove"/>
In SampleImpl, Es gibt zwei überladene Methode entfernen:
public Object remove(Object payload) {
//some code ...
return payload;
}
public void remove() {
//some code ...
}
In Methode Eigenschaft, ich möchte Wählen Sie remove-Methode ohne Argument (remove()). und in irgendeinem Szenario möchte ich Remove-Methode mit Argument (remove (Object Payload)) auswählen. Ich habe immer Payload als Argument gefunden, um die Methode zu entfernen, also wie kann ich nur remove() auswählen?
Es bedeutet, dass ich überladene Methoden in Serviceaktivator nicht verwenden kann. Recht ? – Hamid
Richtig, du kannst nicht. Der mit einem Argument wird anhand des Namens ausgewählt. Nun, dieser ohne Argumente wird ebenfalls berücksichtigt, aber da die Anforderungsnachricht immer eine Nutzlast hat, wählt das Framework niemals die Methode ohne Argumente aus –