首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Spring中使用Camel消息过滤Bean

如何在Spring中使用Camel消息过滤Bean
EN

Stack Overflow用户
提问于 2014-02-13 18:38:32
回答 2查看 2.4K关注 0票数 1

Camel 消息筛选器文档展示了几个使用"filter“的Java示例,如下所示:

代码语言:javascript
复制
from("direct:start")
    .filter().method(MyBean.class, "isGoldCustomer").to("mock:result").end()
    .to("mock:end");

public static class MyBean {
    public boolean isGoldCustomer(@Header("level") String level) {
        return level.equals("gold");
    }
}

但是这个页面并没有展示如何在Spring中调用这个bean:

代码语言:javascript
复制
<route id="my-route">
    <from uri="direct:a" />
    <filter>
        <method>??? how to call MyBean#isGoldCustomer from here???</method>
        <to uri="direct:b" />
    </filter>
</route>

在上面的片段中,我如何将我的<filter/>连接到Java,以及Java需要实现/扩展什么接口?

EN

回答 2

Stack Overflow用户

发布于 2014-02-13 19:24:43

你应该可以这样做:

代码语言:javascript
复制
<bean id="myCustomPredicate" class="com.hveiga.test.MyCustomPredicate"/> 

<route id="my-route">
    <from uri="direct:a" />
    <filter>
        <method ref="myCustomPredicate" />
        <to uri="direct:b" />
    </filter>
</route>
票数 2
EN

Stack Overflow用户

发布于 2015-04-01 08:01:39

代码语言:javascript
复制
<bean id="myCustomPredicate" class="com.hveiga.test.MyCustomPredicate"/>
<route id="my-route">
    <from uri="direct:a" />
    <filter>
        <method ref="myCustomPredicate" method="myCustomPredicateMethod"/>
        <to uri="direct:b" />
    </filter>
</route>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21762743

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档