[XML-SIG] WSDL library ?
Martin v. Loewis
15 Feb 2002 01:18:01 +0100
Rich Salz <firstname.lastname@example.org> writes:
> The ability to transmit pointer-using data types (e.g, a balanced tree
> in C/C++), to make changes on the server, and to send the new tree
> back such that the client can reconstruct -- that can be important and
> useful. Sure, Corba proves that you can solve real-world problems
> without it
Since CORBA 2.3 (July 1999), this kind of interaction is supported.
> It has been more than three years since I left the COM, Corba, DCE
> middleware trenches, and I've gladly forgotten many details, but I
> don't believe it's possible to use Corba IIOP without using the Corba
> object model. Most of the distributed computing world does not use
> the Corba object model.
Can you please clarify? The "CORBA object model" is roughly: Objects
have interfaces, interfaces provide operations, clients invoke
operations. Seems quite general to me, and except for asynchronous,
event-oriented interactions, this is also standard in the distributed
computing world (even HTTP is an RPC mechanism, with clearly
identified request and response messages).
> As for pointers, etc., I'd like to see the IIOP serialization of a
> doubly-linked list.
public string data;
linked_list prev, next;
void put_list(in linked_list list);
# Python client side
from PointerDemo import linked_list
receiver = obtain_reference_to_receiver() #somehow
head = linked_list("Hello",None,None)
head.next = linked_list("World",None,None)
head.next.next = linked_list("!",None,None)
head.next.prev = head
head.next.next.prev = head.next
# invoke operation
This will send an isomorphic copy of the list to the receiver, which
can be written in any of the languages that have an IDL mapping. I
could construct the IIOP/GIOP/CDR byte sequence that is marshalled for
this invocation (including any necessary back-references); please
refer to the CORBA spec if you really need to know.