我有一个单例实例,当我触发其处理程序使用单例实例的事件时,它会导致 Umbrella 异常。代码片段是
@UiHandler("panelButton")
void handleClick(ClickEvent e) {
AppUtils.eventBus.addHandler(PanelClickEvent.TYPE, new PanelClickEventHandler());
AppUtils.eventBus.fireEvent(new PanelClickEvent());
}
处理程序是
public class PanelClickEventHandler implements EventHandler{
@Inject
PanelDataHandler pdh;
public void displayPanelGrid() {
System.out.print(pdh.getPanelList().size());
}
}
错误在于线条
@Inject
PanelDataHandler pdh;
我的 PanelDataHandler 是
@Singleton
public class PanelDataHandler {
.......
@Inject
public PanelDataHandler(){
....
}
.......
}
有什么我想念的吗?我不应该在我的处理程序中使用@singleton 对象吗?