Java 使用Camel和Spring调用外部restapi

Java 使用Camel和Spring调用外部restapi,java,spring,rest,cxfrs,Java,Spring,Rest,Cxfrs,这个问题可能是泛泛的,但它正是标题所说的 我有一个使用HTTPS的外部API,我需要在Camel路由中调用它以获得一些JSON响应,但是,我似乎找不到一个好方法来实现这一点 我尝试了Camel的组件“restlet”来调用API,但没有成功。我尝试使用CXFRS,它需要设置一个bean,就我所知,这反过来又需要一个“serviceClass”。显然,由于API是第三方外部服务,因此无法提供这种服务 是否有人有任何想法或指导,他们可以告诉我仅仅调用一个返回JSON响应的外部RESTAPI 非常感谢

这个问题可能是泛泛的,但它正是标题所说的

我有一个使用HTTPS的外部API,我需要在Camel路由中调用它以获得一些JSON响应,但是,我似乎找不到一个好方法来实现这一点

我尝试了Camel的组件“restlet”来调用API,但没有成功。我尝试使用CXFRS,它需要设置一个bean,就我所知,这反过来又需要一个“serviceClass”。显然,由于API是第三方外部服务,因此无法提供这种服务

是否有人有任何想法或指导,他们可以告诉我仅仅调用一个返回JSON响应的外部RESTAPI


非常感谢。

好吧,原来我完全糊涂了

@Component
公共类WeatherRestrate扩展了RouteBuilder{

@Override
public void configure() throws Exception {
    from("timer:aTimer?fixedRate=true&period=10s")
            .setHeader(Exchange.HTTP_METHOD, constant("GET"))
            .to("ahc:https://restcountries.p.mashape.com/callingcode/90")
            .routeId("TEST")
            .log("${body}");
}
根据我的问题和麻烦,这是工作路径,我在中有RESTAPI URL。在Camelland中,这意味着我希望将其作为REST端点公开,而不是调用它

当我阅读下面链接的邮件列表时,我终于明白了我的意思


另外,谢谢@6ton我之前已经尝试过该页面上的解决方案。

使用带计时器组件的spring DSL

 <?xml version="1.0" encoding="UTF-8"?>
    <routes xmlns="http://camel.apache.org/schema/spring"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">    
    <route id="fetchdata">
            <from uri="timer:somename?period=24h"/>
            <toD uri="https://some/api/xxx?httpMethod=GET"/>
            <to uri="file://abcd?fileName=${exchangeId}&amp;fileExist=Append"/> 
        </route>
    </routes>

在上面,我们将其存储在文件中,如果需要,可以将其发送到其他路由或队列

    <to uri="activemq:queuename?jmsMessageType=Text&amp;exchangePattern=InOnly"/>


您是否尝试过此处建议的解决方案:是的,我尝试过这些解决方案,但我逐渐意识到我犯了一个错误。