有很多关于将Camel与JMS一起使用的信息,但是我无法使用Camel从Web服务请求数据。我想知道这是否可以直接执行此操作,还是需要使用某种JMS /队列?
理想情况下,我希望我的服务(使用java DSL)向另一个Web服务发送请求,检索数据,然后将其存储在本地文件中。是否可以使用简单的自定义RouteBuilder和camelContext在Camel中执行此操作?我已尝试使用
设置我的路线`from(“http:..”).to(“file:...");`
但这似乎不起作用,因为它似乎没有从Web服务获取数据。根据我的阅读,我认为端点http:
将自动构建请求并将其路由到文件。
我现在想知道接下来我可以尝试什么,如果这是可能的话。
答案 0 :(得分:3)
绝对有可能。最好的例子是CXF-Proxy Example。这显示了如何从Camel调用远程Web服务。如果您遇到问题,请随时提出具体问题,我们可以提供帮助。
答案 1 :(得分:1)
您也可以使用Spring Web Services Component
http://camel.apache.org/spring-web-services.html
在这种情况下,您的路线如下:
from("<some event to trigger the route>")
.to("spring-ws:<endpoint of the WS you want to use>")
.to("file:<write the WS result>")
答案 2 :(得分:1)
如果您不介意在SOAP级别尝试,可以尝试这里找到的方法http://camel.apache.org/soap.html link。即使你最终使用更高级别的东西,它也值得一看。