Michel Pelletier wrote:
Even cooler, 'Client.Object' will create surrogate objects of remote Zope objects. If you have a DTML Document on machine A, then Machine B could say:
<dtml-with "_.Client.Object('http://A/YourDocument')"> <dtml-var id> </dtml-with>
and print 'YourDocument'. You can pass autentication information in to all of the calls to access restricted object.
Excelent! Content and sevice syndication among Zope sites without going through RSS or XML-RPC! This will start a snowballing of Zopes 'network effect' and increase the value of belonging to the Zope 'network'. In fact, unless I misunderstand, this will allow Zope applications to not only expose services to other servers, but will allow truly distributed applications... Will there be a separate set of permissions to allow/deny objects to be called like this?
Another no-no would be for an object to call Client on itself. I suspect this would cause some sort of StackOverflow exception. I'm not sure how well Zope would take that kind of behavior.
Hmm, what if you have Zope behind Apache running two or more virtual domain names? can they call each other using this method? Cheers, Michael Bernstein.