0

我目前正在开发一项将单独运行的服务。我想为用户提供多种格式的服务。也就是说,用户可以通过

  1. 打个休息电话
  2. 制作 Web 服务
  3. 发布到队列
  4. 上传一个文件

有没有办法,我可以使用骆驼提供这个。ie 骆驼能站在所有这些前面,并提供路由吗?

4

2 回答 2

1

每个消费者接口(文件、jms、http、cxf、rest 等)都需要自己的路由,但是每个路由都可以调用一个公共路由来重用处理逻辑......

//first, define your interface routes to expose endpoint and convert data to common format as necessary
from("jms:...")...to("direct:processRequest");
from("cxf:...")...to("direct:processRequest");
from("jetty:...")...to("direct:processRequest");
from("file:...")...to("direct:processRequest");

//now define your common processing route
from("direct:processRequest")...
于 2013-10-10T14:46:22.553 回答
1

是的,您可以使用 Camel 实现这一目标。有很多组件可以帮助您使用不同的协议公开服务。在您的情况下,您将需要码头组件来启动一个 http 端点,以及一个应服务于 REST 请求的 CXF Bean。使用 spring webservices 来公开一个 web 服务端点。查看 apache 网站上可用的现成示例:camel-examples

于 2013-10-10T07:57:32.950 回答