Simon Nash wrote:
When creating a domain configuration from scratch using the Domain Manager GUI, the generated configuration files don't include a <binding.sca> entry. This means that deployed composites that use binding.sca for inter-node communication don't work "out of the box" in a distributed domain configuration. In order to get this to work, it's necessary to manually edit the generated domain configuration to add <binding.sca> elements to the node definitions.IMO this is a serious usability issue for someone just starting with the distributed domain and I would like to change the domain manager to generate a <binding.sca> entry in the node configuration. This is a simple one-line change and it doesn't cause any problems in a full build. Adding this entry makes the distributed domain work "out of the box" with binding.sca. However, with the current domain mananger code, this change also removes the local optimization for inter-node calls using <binding.sca>. This is because the node configuration algorithm is currently "all or nothing" which means that all references and services using <binding.sca> would get an http:// absolute URI, forcing them to use binding-sca-axis2 for communication rather than binding-sca. The correct solution is to make the domain manager URI generation algorithm more intelligent and only create the http:// style of URI for binding.sca references and services that use inter-node wires, not those that use intra-node wires. Unfortunately this change is not simple because URI generation in the domain manager currently precedes domain wiring, which means the URI generation code doesn't know which references and service are wired together. I can see 3 options for 1.5.1: 1. Don't add <binding.sca> to node configurations in the domain manager, and force users to do this manually. 2. Add <binding.sca> to node configurations in the domain manager, and accept that there won't be any local optimization when binding.sca is used in a distributed domain configuration. 3. Add <binding.sca> to node configurations in the domain manager, and also fix the URI generation algorithm to preserve local opimizations where they are applicable. I am currently thinking about how best to implement this change. I am willing to work on option 3, but including this will delay the release a little. I don't think option 1 is acceptable. I could live with option 2, but others might not be happy with this. Comments, questions, opinions, preferences? Simon
I have an idea for how to make option 3 work with only minor changes in the builders. I have written some code and I will test it tomorrow. Simon
