Been thinking more about this and a couple more discussion points come
to mind...

The default factory code, as it appears in the spec, seems to assume a
single domain per JVM as the domainURI plays no role in selecting the
factory instance in the default case. Was that the intention? Seems
restrictive compared to what we had originally envisaged, for example,
suppose a client wants to talk to services from more than one domain.

Injecting the static from within the OSGi based runtime will be tricky
as it's likely to be loaded by a different classloader. I.e. the
client will load the SCAClientFactory using it's app classloader (this
assumes the client itself is not a bundle). The runtime will load the
SCAClientFactory using the api bundle classloader. Setting the static
from within OSGi will not lead to happiness.

Anything we do in the api module to inject into the field, for
example, by creating a subclass, will pull in Tuscany specific
dependencies which is what we're trying to avoid.  For the time being
I'm putting a fix in the equinox launcher, and elsewhere, to bridge
the gap between JSE and OSGi but needs further discussion. More
shortly.

Regards

Simon

Reply via email to