繁体   English   中英

如何使用apachecamel restlet将一个rest服务的响应路由到另一个rest服务

[英]How to route response of one rest service to another rest service using apache camel restlet

我正在尝试使用camel-restlet 在两个Web 服务之间进行路由。这是我的pom.xml

<repositories>
    <repository>
        <id>maven-restlet</id>
        <name>Public online Restlet repository</name>
        <url>http://maven.restlet.org</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-core</artifactId>
        <version>2.17.1</version>
    </dependency>
    <dependency>
        <groupId>org.restlet.jee</groupId>
        <artifactId>org.restlet</artifactId>
        <version>2.3.1</version>
    </dependency>
    <dependency>
        <groupId>org.restlet.jee</groupId>
        <artifactId>org.restlet.ext.httpclient</artifactId>
        <version>2.3.1</version>
    </dependency>
    <dependency>
        <groupId>org.restlet.jee</groupId>
        <artifactId>org.restlet.ext.spring</artifactId>
        <version>2.3.1</version>
    </dependency>
    <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-http</artifactId>
        <version>2.17.1</version>
        <scope>test</scope>
    </dependency>
</dependencies>

任何人都可以帮助如何仅使用camel-restlet 和tomcat 在两个Web 服务之间进行路由。这是我的camel-context.xml

   <beans>
<camelContext>
  <route>
    <from uri="restlet:/bid/req?restletMethods=GET"/>
     <to uri="cxfrs:http://localhost:8080/xxxxxxxxxx"/> 
  </route>
</camelContext>
<bean id="RestletComponent" class="org.restlet.Component" />
<bean id="RestletComponentService" class="org.apache.camel.component.restlet.RestletComponent">
  <constructor-arg index="0">
    <ref bean="RestletComponent"/>
  </constructor-arg>
</bean>
</beans>
The response returned from 1st service is set in exchange body. Retrieve body at the 2nd service endpoint to get response.



    .to("bean:beanName?method=testMethod");
    .to("bean:beanName2?method=testMethod2");

        public Response testMethod() { // This line will return testMethod respose in exchange body
        return response;
        }
        public void testMethod2() {
        Response response = exchange.getIn().getBody();
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM