Apache Camel - исключение MethodNotFoundException в преобразовании - PullRequest
1 голос
/ 08 февраля 2012

Я пытаюсь использовать верблюжий путь более динамично, но у меня были небольшие проблемы.(Я использую camel-core_2.9.0)

Я использую метод transform в определении маршрута

Object methodclass;
String methodname;

context.addRoutes(new RouteBuilder() {
@Override
public void configure() throws Exception {
    // TODO Auto-generated method stub
        from("vm:internal0").
        transform().method(methodclass, methodname).
        to("vm:receiver");
    }
});

Теперь, если у вас есть это назначение (при условии, что у меня есть класс TransformLogic с "transform "method)

methodclass = new TransformLogic();
methodname = "transform";

У меня нет проблем, но если у меня есть это задание

methodclass = TransformLogic.class;
methodname = "transform";
.
.

Верблюжий брошен`

org.apache.camel.FailedToCreateRouteException: Failed to create route route3 at: >>> Transform[bean{java.lang.Class, method=transform}] <<< in route: Route[[From[vm:internal0]] -> [Transform[bean{java.lang.Clas... because of org.apache.camel.component.bean.MethodNotFoundException: Method with name: transform not found on bean: class core.compoundterm.primitiveterm.DefaultTransformLogic of type: java.lang.Class

Где яобижают?Спасибо

1 Ответ

2 голосов
/ 08 февраля 2012

Убедитесь, что класс TransformLogic имеет - конструктор по умолчанию без аргументов - или что имя метода является публичным статическим методом

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...