Hello NG,
i’ve been looking through the Workbench example with the SelectionListener from Eclipse.
In my case i do not want to use a View to listen for changes, i want to use an OSGi Service.
Therefore i have no getSite().getWorkbenchWindow() etc…
How can i gain access to the SelectionService mwithout a view?
I tried to get it via the Activator like this:
Activator activator = Activator.getDefault();
IWorkbench workbench = activator.getWorkbench();
IWorkbenchWindow workbenchWindow =
workbench.getActiveWorkbenchWindow();
return workbenchWindow.getSelectionService();
this failed for me!
Then i tried to get it via PlatformUI:
ISelectionService selectionService = (ISelectionService) PlatformUI
.getWorkbench().getActiveWorkbenchWindow()
.getService(ISelectionService.class);
return selectionService;
but also this fails.
i thought this might happen as my service tries to get the SelectionService too early when no WorkbenchWindow is active, so i retry and retry. But i NEVER get this service, in no way described above.
Why? How can i gain this Service properly without View?
Thanks in advance!
Ludwig
PS: why no view? Because it would need activation before i can use it. If i have a service running i can open the proper perspective/view when needed…