private void createAndConfigureHostContainer(BundleContext context) throws Exception {
// Get IContainerManager singleton
ServiceTracker<IContainerManager,IContainerManager> containerManagerTracker = new ServiceTracker<IContainerManager,IContainerManager>(context,IContainerManager.class.getName(), null);
containerManagerTracker.open();
IContainerManager containerManager = containerManagerTracker.getService();
if (containerManager == null) throw new NullPointerException("Cannot get IContainerManager service");
containerManagerTracker.close();
// Now create a hostContainer instance
hostContainer = containerManager.getContainerFactory().createContainer("ecf.generic.server");
// Get the ISharedObjectContainerGroupManager adapter interface
ISharedObjectContainerGroupManager hostManager = (ISharedObjectContainerGroupManager) hostContainer.getAdapter(ISharedObjectContainerGroupManager.class);
// Set connect policy
hostManager.setConnectPolicy(new IConnectHandlerPolicy() {
public void refresh() {