cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrei Shakirin <ashaki...@talend.com>
Subject RE: CXF Proxy message in Interceptor
Date Thu, 25 Oct 2012 08:37:12 GMT
Hi,

WSDL query is processed using interceptor chain in CXF. The main job is done in WSDLGetInterceptor.java.
You can try to do the following:
1) put your own interceptor before WSDLGetInterceptor;
2) check if it is WSDL get request (you can reuse WSDLGetInterceptor .isRecognizedQuery())
3) if check (2) is true, replace Message.REQUEST_URL message property to URL of your target
service.

Not sure is there the easier way to do it.

Regards,
Andrei.

-----Original Message-----
From: rouble@gmail.com [mailto:rouble@gmail.com] On Behalf Of rouble
Sent: Donnerstag, 25. Oktober 2012 05:51
To: users@cxf.apache.org
Subject: Re: CXF Proxy message in Interceptor

One question about using a @WebServiceProvider and Provider<Source> interface to proxy
a web service like you suggested. Please read inline.

> The easiest way to handle this with "Pure" cxf would be to write an endpoint using a
Provider interface.   Something like:
>
> MyService extends Provider<Source> {
>
>     public Source invoke(Source s) {
>           ...  use a Dispatch<Source> client to send the Source to a new endpoint
...
>     }
> }

[rouble]
I notice when someone tries to access the WSDL of this proxy web service, it does not proxy
the wsdl request. Instead it just displays the WSDL of the proxy web service with the invoke
request and response. Any ideas on how to actually proxy the wsdl request - so that the client
sees the wsdl from the remote end point?

I was looking at implementing a QueryHandler to handle "?wsdl"
queries, but I get lost as to how to use a dispatch client to send a wsdl GET request. Any
tips - or any other ideas?

tia,
rouble

> --
> Daniel Kulp
> dkulp@apache.org - http://dankulp.com/blog Talend Community Coder - 
> http://coders.talend.com
>

Mime
View raw message