如何使用camel-cxf在restful web服务中调用方法?

时间:2013-02-01 06:27:36

标签: rest apache-camel cxfrs

我想使用apache camel调用rest服务。目前我正在使用cxfrs组件来配置我的端点。我的路线如下:

from("cxfrs://http://127.0.0.1:8080/RestServiceApp/?resourceClasses="com.sample.Server.HelloWorld").log("Route Started"); 

我的问题是我想调用服务器类中存在的方法(在我的例子中是HelloWorld)。你能告诉我怎么称呼一种特定的方法吗?

1 个答案:

答案 0 :(得分:0)

Camel不会调用资源类方法。来自Camel网站http://camel.apache.org/cxfrs.html的文档:

  

此类仅用于配置JAXRS属性。方法   在将消息路由到端点期间不会执行,   路线本身负责所有处理。

您需要编写自定义处理逻辑,例如:

<from uri="cxfrs://http://127.0.0.1:8080/RestServiceApp/?resourceClasses="com.sample.Server.HelloWorld">
<choice>
    <when>
        <simple>${header.operationName} == 'operation1'</simple>
        <to uri="direct:operation1" />
    </when>
    <when>
        <simple>${header.operationName} == 'operation2'</simple>
        <to uri="direct:operation2" />
    </when>
    ....
</choice>