Bug 296356 We shouldn't create more than one e4 OSGi context per BundleContext
bundles/org.eclipse.e4.ui.workbench.swt/src/org/eclipse/e4/ui/workbench/swt/internal/WorkbenchApplication.java
String[] args = (String[]) applicationContext.getArguments().get(
				"application.args"); 
		Map<String, String> argsList = processArgs(args);
		String appURI = argsList.get(APPLICATION_XMI);
		String cssURIr = argsList.get(APPLICATION_CSS);
		String cssResourcesURIr = argsList.get(APPLICATION_CSS_RESOURCES);
		IProduct product = Platform.getProduct();
		if (product != null) {
			if (appURI == null) {
				appURI = product.getProperty(APPLICATION_XMI); 
			}
			if (cssURIr == null) {
				cssURIr = product.getProperty(APPLICATION_CSS);
			}
			if (cssResourcesURIr == null) {
				cssResourcesURIr = product
						.getProperty(APPLICATION_CSS_RESOURCES);
			}
		}
		final String cssURI = cssURIr;
		final String cssResourcesURI = cssResourcesURIr;
		Assert.isNotNull(appURI, "-applicationXMI argument missing"); 
		final URI initialWorkbenchDefinitionInstance = URI
				.createPlatformPluginURI(appURI, true);
		Realm.runWithDefault(SWTObservables.getRealm(display), new Runnable() {
			public void run() {
				try {
					String engineURI = "platform:/plugin/org.eclipse.e4.ui.workbench.swt/"; 
					engineURI += "org.eclipse.e4.ui.workbench.swt.internal.PartRenderingEngine";