Revised fix for bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=534439

Change-Id: I0000000000000000000000000000000000000000
diff --git a/osgi/bundles/org.eclipse.ecf.osgi.services.remoteserviceadmin/src/org/eclipse/ecf/internal/osgi/services/remoteserviceadmin/Activator.java b/osgi/bundles/org.eclipse.ecf.osgi.services.remoteserviceadmin/src/org/eclipse/ecf/internal/osgi/services/remoteserviceadmin/Activator.java
index b005c6b..a91bbf0 100644
--- a/osgi/bundles/org.eclipse.ecf.osgi.services.remoteserviceadmin/src/org/eclipse/ecf/internal/osgi/services/remoteserviceadmin/Activator.java
+++ b/osgi/bundles/org.eclipse.ecf.osgi.services.remoteserviceadmin/src/org/eclipse/ecf/internal/osgi/services/remoteserviceadmin/Activator.java
@@ -228,11 +228,6 @@
 		}
 	}
 
-	private void initializeSAXParserFactory() {
-		ServiceReference<?> ref = Activator.context.getServiceReference(SAXParserFactory.class.getName());
-		if (ref == null) 
-			Activator.context.registerService(SAXParserFactory.class.getName(), SAXParserFactory.newInstance(), null);
-	}
 	/*
 	 * (non-Javadoc)
 	 * 
@@ -253,12 +248,6 @@
 		// approach/using the ServiceFactory extender approach for this purpose:
 		// https://mail.osgi.org/pipermail/osgi-dev/2011-February/003000.html
 		initializeProxyServiceFactoryBundle();
-		// Start distribution providers if not already started
-		initializeProviders(context.getBundle(), DistributionNamespace.DISTRIBUTION_NAMESPACE,
-				"Could not start distribution provider. "); //$NON-NLS-1$
-		// Start distribution providers if not already started
-		initializeProviders(context.getBundle(), DiscoveryNamespace.DISCOVERY_NAMESPACE,
-				"Could not start discovery provider. "); //$NON-NLS-1$
 		// make remote service admin available
 		rsaProps = new Properties();
 		rsaProps.put(RemoteServiceAdmin.SERVICE_PROP, new Boolean(true));
@@ -323,6 +312,9 @@
 				});
 		ctdTracker.open();
 
+		// Start distribution providers if not already started
+		initializeProviders(context.getBundle(), DistributionNamespace.DISTRIBUTION_NAMESPACE,
+				"Could not start distribution provider. "); //$NON-NLS-1$
 		// create endpoint description locator
 		endpointDescriptionLocator = new EndpointDescriptionLocator(context);
 		// create and register endpoint description advertiser
@@ -333,6 +325,11 @@
 
 		// start endpointDescriptionLocator
 		endpointDescriptionLocator.start();
+		
+		// Start discovery providers if not already started
+		initializeProviders(context.getBundle(), DiscoveryNamespace.DISCOVERY_NAMESPACE,
+				"Could not start discovery provider. "); //$NON-NLS-1$
+
 	}
 
 	/*