我正在使用Eclipse 4.2 Juno,Java 1.6。我的申请表中有两个部分。一部分是注册SelectionChangedListener:
@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 */
}
}
但是,管道的这一端没有收到任何信息。我做错了什么或者如何调试?
答案 0 :(得分:0)
上面的代码看起来不错,但请尝试检查以下问题: