Johan

Do you really need the WSDL in this scenario?

If you don't need the WSDL then Synapse does this out-of-the-box.

If you need WSDL then we need to think harder about this!

:)

Paul

On Fri, Mar 27, 2009 at 8:59 AM, Johan Eltes
<[email protected]> wrote:
> Is the conclusion that I will have to create a full configuration for every
> WSDL I need to virtualize?
> All my virtual services are virtualized based on a single set of rules /
> conventions and registry metadata, so I'm looking for a way to create ONE
> gateway (synapse deployment) that will not need to change until the rules /
> conventions changes. Virtualization of a new WSDL should be a registry
> activity only ("systematic virtualization").
>
> If a mediator fetches the wsdl, is there still "time" for applying security
> policies to the incomming message or is there a "bootstrapping" problem?
>
> /Johan
>
> On 27 mar 2009 v13, at 09.43, Ruwan Linton wrote:
>
>> Hi Johan,
>>
>> To me this is a message mediation scenario, where you want to respond to
>> the
>> client by looking at the To address of the message coming in. I am not
>> saying this is not possible.... but this will require an extension to
>> synapse.
>>
>> So basically you have to have a mediator to fetch the WSDL from the
>> registry
>> and insert the correct addresses to the WSDL. Rest of the scenario can be
>> configured using a CBR in the synapse configuration.
>>
>> Thanks,
>> Ruwan
>>
>> On Fri, Mar 27, 2009 at 5:02 AM, Johan Eltes <
>> [email protected]> wrote:
>>
>>> I would like to create a proxy service that handles any service request
>>> as
>>> long as a WSDL can be dynamically associated with the request. The
>>> WS-Policy
>>> attachments of the WSDL mapped to a request should be applied
>>> dynamically.
>>> It is a bit like the DRY principle implemented by metaprogramming in
>>> Grails,
>>> RobyOnRails etc. The following conventions would drive the behavior:
>>>
>>> wsdl GET request:
>>> -------------------------
>>> http://my.synapse.host/<urn of Service>/?wsdl
>>>
>>> Synapse would look-up  the wsdl from a registry based on the value of
>>> <urn
>>> of Service> (e.g. urn:se:test:stock-quote:v1), replace the soap address
>>> and
>>> then return the wsdl.
>>>
>>> SOAP request
>>> -------------------
>>> When the soap request arrives at http://my.synapse.host/<urn of Service>,
>>> Synapse would dynamically look up the wsdl using <urn of Service> as key
>>> (see above) so that the policies defined by the wsdl could be applied.
>>>
>>> A metadata-driven mediation would use the soap Action (or wsa:action) +
>>> the
>>> value of a customer soap header element as input to a custom registry,
>>> which
>>> would yield  the To-address for the outbound soap request. The outbound
>>> soap
>>> processing would fetch the WSDL from the To-adress using the ?wsdl
>>> convention. The WS-Policy attachments of the target service WSDL would be
>>> applied.
>>>
>>> The purpose of this scenario is to have a generic Synapse virtual
>>> endpoint
>>> that can process any soap request on behalf of any service, as long as a
>>> wsdl is mapped to the last path element of the request URL and some
>>> predefined conventions for metadata is applied.
>>>
>>> Is this possible in Synapse? Any pointers to significant capabilities are
>>> appreciated.
>>>
>>> Thanks,
>>>
>>> Johan
>>>
>>>
>>>
>>
>>
>> --
>> Ruwan Linton
>> Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
>> WSO2 Inc.; http://wso2.org
>> email: [email protected]; cell: +94 77 341 3097
>> blog: http://ruwansblog.blogspot.com
>
>



-- 
Paul Fremantle
Co-Founder and CTO, WSO2
Apache Synapse PMC Chair
OASIS WS-RX TC Co-chair

blog: http://pzf.fremantle.org
[email protected]

"Oxygenating the Web Service Platform", www.wso2.com

Reply via email to