On Fri, Jun 19, 2009 at 10:15 PM, Raymond Feng<[email protected]> wrote: > Hi, Simon. > > Good progress! > > I'm trying to run the two nodes itest using the distributed endpoint > registry. When the endpoint is looked up, I check if the primary member for > the entry to see if it is the same as the local member to set the "remote" > flag. Then I ran into the following issues: > > 1) The service with binding.sca and a remotable interface is not published > to WS (as the URI is not absolute and the alwaysRemote == true). > > * How do we decide if a binding.sca should be published to WS? (Maybe a > domain top-level component service with remotable interface?)
Not sure what the "alwaysRemote" bit is for. The other code is there because the old domain manager was able to decide if an endpoint was referenced remotely and set an absolute URI in that case. If we want to run off the endpoint registry alone we don't know whether a endpoint will be used remotely before we come to start it. So in that configuration we probably need to enable a remote endpoint if the interface is remotable for the time being. A future solution could be to only start sca binding endpoints when a reference is registered that uses it. > > 2) The derived binding URI doesn't consider the structural URI of the > component/service. Ideally, it should be <uri of the component with the > domain>/serviceName/bindingName. > > We probably need to fix > org.apache.tuscany.sca.assembly.builder.impl.CompositeBindingURIBuilderImpl.constructBindingURI(URI, > URI, URI, boolean, URI). +1 and we need to find a way to pass in the default binding information for a node rather than relying on the domain. > > 3) We need to map it to an absolute WS URI when it publishes to the endpoint > registry (Simon already mentioned that we need to have base URIs for a given > node. For the moment, we can just use http://localhost:8080/ as the default) > so that the client side sees the physical URI of the remote endpoint. Right, this is the point about passing default binding information into the binding URI calculation. Can we have a node configuration file for this kind of info. I'm not suggesting that we use a composite file as we do currently in the 1.x domain manager. but a specific XML file for configuring the node. Could contain. node configuration info (if not provided on command line) default binding information pointer to (or nested) composite file to describe management services that node provides (future feature) Simon
