我有一个GWT应用程序,我移植到GWT 2.4.现在我在这一行上弃用了警告:
historyHandler.register(placeController, eventBus, defaultPlace);
Run Code Online (Sandbox Code Playgroud)
"不推荐使用PlaceHistoryHandler类型的方法寄存器(PlaceController,EventBus,Place)"
有更好的方法可以在这里获得相同的结果,还是可以安全地忽略警告?
public void onModuleLoad()
{
// Create ClientFactory using deferred binding so we can replace with
// different impls in gwt.xml
ClientFactory clientFactory = GWT.create(ClientFactory.class);
EventBus eventBus = clientFactory.getEventBus();
PlaceController placeController = clientFactory.getPlaceController();
// Start ActivityManager for the main widget with our ActivityMapper
ActivityMapper activityMapper = new AppActivityMapper(clientFactory);
ActivityManager activityManager = new ActivityManager(activityMapper, eventBus);
activityManager.setDisplay(appWidget);
// Start PlaceHistoryHandler with our PlaceHistoryMapper
AppPlaceHistoryMapper historyMapper = GWT.create(AppPlaceHistoryMapper.class);
PlaceHistoryHandler historyHandler = new PlaceHistoryHandler(historyMapper);
historyHandler.register(placeController, eventBus, defaultPlace);
RootPanel.get().add(appWidget);
// Goes to place represented on URL or default place
historyHandler.handleCurrentHistory();
}
}
Run Code Online (Sandbox Code Playgroud)
不推荐使用该方法,因为EventBus类型已从中com.google.gwt.event.shared移至com.google.web.bindery.event.shared.正如JavaDocs中PlaceHistoryHandler所指出的那样(没有特别明确),切换EventBus到com.google.web.bindery.event.shared.EventBus类型将解决已弃用的警告.也就是说,目前两种EventBus类型在功能上都是相同的,并且可以安全地忽略警告.