我目前正在开发一项将单独运行的服务。我想让多种格式的用户都可以使用该服务。也就是说用户可以通过骆驼 - 多种类型的消费者
- 制作一个REST调用
- 使Web服务
- 发布到一个队列
- 上传文件
有没有办法访问该服务,我可以使用骆驼提供这个。即骆驼可以站在所有这些之前,并提供路由?
我目前正在开发一项将单独运行的服务。我想让多种格式的用户都可以使用该服务。也就是说用户可以通过骆驼 - 多种类型的消费者
有没有办法访问该服务,我可以使用骆驼提供这个。即骆驼可以站在所有这些之前,并提供路由?
每个用户界面(文件,JMS,HTTP,CXF,休息等)都需要有自己的路线,但后来每条路线都可以拨打的共同路线重用处理逻辑...
//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")...
是的,你可以用骆驼来实现这一点。有很多组件可以帮助您使用不同的协议公开服务。在你的情况下,你需要jetty组件来启动一个http端点,进一步的CXF Bean将服务于REST请求。使用spring webservices来公开Web服务端点。查看Apache网站上提供的现成示例:camel-examples。
谢谢!但所有这些例子都只适用于一种类型。其中一个,ActiveMQ,Rest。并非全部在一起 – madhairsilence
@madhairsilence您可以将它们合并在一起,并在您的应用程序中有多条路线 –
如果服务在本地运行,您可以从(“jms:...”)...到(“bean:...) ,从(“cxf:...”)...到(“bean:...)等。 – techuser
嗨,谢谢你!我继续使用Tomcat -ActiveMQ示例。现在,我有一个WEB应用程序运行,它监听Camel路由的tomcat。我尝试添加Spring REST控制器,但不知道如何路由它。我想在路由它的时候,调用spring rest URL。怎么做?任何提示? – madhairsilence