Simon Nash wrote:
One comment inline.
Simon
6. If CORBA objects operation argument is object reference, then
user should provide object which was previously obtained from
binding or other CORBA object. User cannot use users-side object as
an argument.
Yes. Let's don't worry object reference too much at this point. We
are in the SOA world instead of distributed object :-).
This is OK if we are exposing a SCA service via CORBA. If we are using
SCA to invoke existing CORBA services that expect object references
to be passed, we will need to come up with an approach for handling them.
I'd suggest that we start first with exposing SCA services via CORBA
as this seems to be the simplest and most useful form of integration.
Unfortunately I started earlier with reference bindings - even submitted
a patch today.
My thoughts for object references are that after obtaining some remote
reference, it will be enhanced by cglib and connected to users declared
interface. By enhancing I mean interception of methods invocations and
adding dynamic CORBA invocations. Such enhanced object could be
recognizable by dynamic invocation mechanism, and it could be passed
while invoking operations on remote objects.
In this solution we would have two types of CORBA objects - ones that
were intentionally declared, and ones that were obtained from roots, and
which are transparent. It's maybe kind of out of control by Tuscany
runtime, but is there any other way to obtain and use CORBA references
which are not registered in name services?
Thanks,
Wojtek