tuscany-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Simon Laws <simonsl...@googlemail.com>
Subject Re: Dynamic service references ?
Date Tue, 22 Nov 2011 13:51:10 GMT
On Fri, Nov 18, 2011 at 2:38 PM, Millies, Sebastian
<Sebastian.Millies@softwareag.com> wrote:
>
>
>> -----Original Message-----
>> From: Simon Laws [mailto:simonslaws@googlemail.com]
>> Sent: Friday, November 18, 2011 2:15 PM
>> To: user@tuscany.apache.org
>> Subject: Re: Dynamic service references ?
>>
> [snip]
>> Hi Sebastien
>>
>> I'm not clear about whether you have a finite number of target service
>> that you know up front from which you want to select dynamically. Or
>> whether you don't know the service endpoints but you just know the
>> service interface.
>>
>> Regards
>>
>> Simon
>>
>> --
>> Apache Tuscany committer: tuscany.apache.org
>> Co-author of a book about Tuscany and SCA: tuscanyinaction.com
>
> It is the latter: I'm facing an undetermined number of identical services.
> I know the service interface (the wsdl of an SAP web service), but I do not
> know in advance which endpoint to talk to.
>
> -- Sebastian
>
> IDS Scheer Consulting GmbH
> Geschäftsführer/Managing Directors: Kamyar Niroumand, Ivo Totev
> Sitz/Registered office: Altenkesseler Straße 17, 66115 Saarbrücken, Germany - Registergericht/Commercial
register: Saarbrücken HRB 19681
> http://www.softwareag.com
>
>

I don't have a good immediate answer and I don't want to distract you
and Simon from investigating what can be done with service references
(hence the delay) however two thoughts come to mind.

Mike Edwards reminded me that there is a wiredByImpl flag in SCA that
we don't exploit in Tuscany today. This is what the OASIS spec says
about it:

351 • wiredByImpl : boolean (0..1) - a boolean value, "false" by
default. If set to "false", the reference is
352 wired to the target(s) configured on the reference. If set to
"true" it indicates that the target of the
353 reference is set at runtime by the implementation code (e.g. by
the code obtaining an endpoint
354 reference by some means and setting this as the target of the
reference through the use of
355 programming interfaces defined by the relevant Client and
Implementation specification).

This doesn't indicate how that might me achieved though as it would be
runtime specific. We'd probably have to do something similar to what
you're already looking at, i.e. allow the service reference to be
retrieved and allow it's model to be edited and restarted.

Something that could be possible already in 2.x is to use the domain
registry to dynamically route based on SCA target name. This would
rely on having the target services contributed to the SCA domain and
then using the SCAClient interface to look them up. I.e. it doesn't
present a mechanism for manually configuring binding.ws with a URI.

Both of these things are future things but if the current
investigations get stuck they present avenues for further
investigation.

Regards

Simon

-- 
Apache Tuscany committer: tuscany.apache.org
Co-author of a book about Tuscany and SCA: tuscanyinaction.com

Mime
View raw message