Raymond had to adjust the binding-ws-calculator test case where we are calling references from within an @Init method which was deadlocking. In this case the reference/service interface is over web services. The problem is that the CompositeActivator is written so that each component is started completely and one after another and hence target service bindings are not necessarily active when the first @Init is run, e.g. in CompositeActivator.start(Component component)...
For each component start reference provider start service provider start implementation provider start scoped component - Whic in turn calls @Init method Which I think should be For each component start reference provider start service provider start implementation provider For each component start scoped component In order that all the implementations and reference/service bindings are started before any @Init methods run. I'm saying this based on the assumption that it's valid to call injected references from within methods marked as @Init. The Java common annotations and APIs say's that @Init must be called after injection is complete. It doesn't explcitly say that you can use the injected references but I don't see how you can stop developers doing this if injection is complete. Simon
