如何将交换ID和始发路由ID传递给bean



Exchange接口有getExchangeId()方法,该方法返回交换机的ID。当从路由调用bean时,有没有办法将这个值传递给bean的方法?

同样的问题是关于发起交换的路由的ID。此值由Exchange接口的getFromRouteId()方法返回。

我知道我可以将一个Exchange对象完全传递给bean。但在我的情况下,将bean绑定到Camel API是不可取的。

您可以使用@Simple注释bean参数绑定

   public void foo(@Simple("exchangeId") String id, 
                   @Simple("routeId") String routeId, 
                   Object body) { 
     ...
   }

一些链接

  • http://camel.apache.org/simple
  • http://camel.apache.org/parameter-binding-annotations.html

最新更新