Выбрать перегруженный метод в активаторе сервиса (Spring Integration)
Я определил serviceActivator:
<integration:service-activator input-channel="sampleChannel"
ref="sampleImpl" method="remove"/>
В SampleImpl есть два перегруженных метода удаления:
public Object remove(Object payload) {
//some code ...
return payload;
}
public void remove() {
//some code ...
}
В свойстве метода я хочу выбрать метод удаления без аргумента ( remove()). и в некотором сценарии я хочу выбрать метод удаления с аргументом (удаление (полезная нагрузка объекта)). Я нашел всегда передавать полезную нагрузку в качестве аргумента для удаления метода, так как я могу выбрать только удалить ()?
1 ответ
Решение
Это невозможно с XML DSL. Вы должны переименовать один из них или написать сервисы-оболочки. Это похоже на выбор сеттера в Java Beans. Таким образом, если вы хотите использовать разную логику с разными установщиками, вы должны называть их разными словами.