0
我正在使用Eclipse 4.2 Juno,Java 1.6。我的应用程序中有两个部分。一部分是注册SelectionChangedListener:ESelectionService无法接收消息
@Inject
private ESelectionService selectionService;
@PostConstruct
public void init() {
TreeViewer bsTreeViewer = new TreeViewer(tabFolder, SWT.BORDER);
/* some other stuff */
// Event declaration
bsTreeViewer.addSelectionChangedListener(new SelectionChangedListener() {
@Override
public void selectionChanged(SelectionChangedEvent event) {
if(selectionService != null) {
selectionService.setSelection(((IStructuredSelection)event.getSelection()).getFirstElement());
}
}
});
}
该监听器被调用正确。第一个选择的元素也是正确的类型。
我另一部分我设立了接收端:
@Inject
public void setBS(@Named(IServiceConstants.ACTIVE_SELECTION) @Optional BS bs) {
if (bs == null) {
/* implementation not shown */
} else {
/* implementation not shown */
}
}
但是,没有在管的这一端接收。我做错了什么,或者我怎么能调试呢?
不知何故,我的SVN回购被破坏。我的接收器对象没有被调用。我刚刚恢复到以前的状态,现在又重新开始工作。 – Clemens