Hi

This is indeed an interesting use-case.

So basically you want Camel to pass through the query parameters from jetty 
producer to the http consumer and then return the HTTP body. 

That would be pretty cool if that worked out-of-the-box. So lets add the use 
case as a JIRA ticket ;) So please create a JIRA ticket if you need this 
feature out-of-the-box.


About the POST/GET you can instrument the http componet what to use by setting 
a special header with the choice.
http://activemq.apache.org/camel/http.html

From("xxx")
.setHeader(org.apache.camel.component.http.HttpMethods.HTTP_METHOD, 
constant(org.apache.camel.component.http.HttpMethods.GET))
.to("xxx")

Then you need to set the query parameters, you can do this also by setting a 
speical header

From("xxx")
.process(new Processor()) {
Public void process(Exchange exchange) {
// TODO: get the query parameters from jetty
String param = ""
headers.put(HttpProducer.QUERY, param);
}

http://activemq.apache.org/camel/jetty.html


BTW: We have refined jetty and http component in Camel 1.5, you could try the 
1.5-SNAPSHOT to see how far we are from supporting this out-of-the-box already.
http://activemq.apache.org/camel/download.html


Med venlig hilsen
 
Claus Ibsen
......................................
Silverbullet
Skovsgårdsvænget 21
8362 Hørning
Tlf. +45 2962 7576
Web: www.silverbullet.dk

-----Original Message-----
From: Michael.Murphree [mailto:[EMAIL PROTECTED] 
Sent: 15. september 2008 20:56
To: camel-user@activemq.apache.org
Subject: Proxying web services


Greetings,

I'm trying to configure an interceptable web services proxy using Camel
1.4.0.  My initial thought was to attempt to create a simple HTTP proxy:

...
from("jetty:http://localhost:8080/services/myService";)
        .to("http://otherhost:80/Service1.asmx";);
...

The hope was that this would also expose features like using ?wsdl in a
browser, for example.  What seems to happen instead is that query parameters
are stripped from the incoming GET request, and the request type is
converted into a POST.

I have several .Net web services running in another application that I'm
trying to provide a transparent front end for.  Rather than manually code
(or generate) separate implementations for each WS, I'd rather pass the
requests through in a manner that permits interception in later
implementations.  Is there a better way to do this?  What am I doing wrong?

Regards,

Michael Murphree
-- 
View this message in context: 
http://www.nabble.com/Proxying-web-services-tp19498936s22882p19498936.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to