FAQ
Ошибки и решения при создании маршрутов в Apache Camel:
Ошибка: AmbiguousMethodCallException
Пример кода, вызывающего ошибку:
<setProperty name="t1"> <simple>${exchangeProperty[t0].replace("es","")}</simple> </setProperty>
Описание ошибки:
org.apache.camel.component.bean.AmbiguousMethodCallException: Ambiguous method invocations possible: [public java.lang.String java.lang.String.replace(java.lang.CharSequence,java.lang.CharSequence), public java.lang.String java.lang.String.replace(char,char)] on the exchange: Exchange[ID-valery-TravelMate-P215-53-1731680655831-7-1]
Ошибка возникает, когда Camel не может однозначно выбрать подходящий метод для выполнения и выполняет сверку типа параметра с body:
methodInfo.getBodyParameterType().isInstance(body)
где, methodInfo.getBodyParameterType() - java.lang.CharSequence
Поэтому в данном случае ошибка проявляется, если body != String.