I am currently using a HTTP method for invoking some URL which will create a JIRA issue.
Now I want to use Apache Camel, how can I use that?
I need to invoke the following link through Camel:
http://localhost:8080/rest/api/2/project/" + key + /components
As I'm new to Camel, please suggest some solutions and examples too.
Thanks
You could easily use the CXFRS Component; if you need to do it using the HTTP Component for some reason you could easily use that as well:
And of course you will need to enrich your message with the
myKey
header before getting to this part of the route.You can consume REST service from camel using
CXFRS Component
.Apache camel has enough information about this.http://camel.apache.org/cxfrs.html
See also this FAQ about using dynamic to endpoints in Camel http://camel.apache.org/how-do-i-use-dynamic-uri-in-to.html
Essentially the EIP pattern for this is the recipient list.
So in your case it could also be simplified to as one EIP
Mind the http component in Camel is fully synchronous. If you want to do request/reply over HTTP and avoid having the caller block while waiting for the reply message, then you can use some of the other HTTP components from Camel such as:
I am using apache camel jetty
so here when the user will hit http://localhost:9000/offers then the endpoint direct:getOffers will get invoked
so now defining the getOffers end point
Here another service is running at 9008 having a rest resource of http://localhost:9008/api/v2.0/offers and this is the resource that i am trying to consume.
so when camel instance starts it registers both the routes then it does the processing as described above
Note Its important to add the option of ?bridgeEndpoint=true for this to work