在我的检票口应用程序中,页面导航是通过在 onClick() 方法上调用新页面的构造函数来创建新页面对象。如下。
DisplayItem.add(new Link("edit") {
@Override
public void onClick() {
try{
setResponsePage(new ReportPage(object, getPageReference()));
} catch ( CustomException e){
/// set some feedback message
}
}
});
ReportPage有几个 LoadableDetachableModels、PageableListViews、Panels、Fragments 等。我在ReportPage的构造函数中进行异常处理,并在发生异常时将其返回。下图。(部分代码)
public ReportPage(final Objectm, final PageReference pr) throws CustomException{
try{
final LoadableDetachableModel<MaintReport> ldm =
new LoadableDetachableModel<MaintReport>() {
@Override
protected MaintReport load() {
return new MaintReport();
}
};
/*
Several LoadableDetachableModels, PageableListViews, Panels, Fragments etc.
*/
} catch ( Exception ex){
// create Custom Exception
} finally {
// Clean up of stuff
}
所以如果在构建页面时出现异常。我应该如何清理(在finally块中)?. 我应该将所有单个对象设置为 null 吗?是否有任何 Wicket 方法来垃圾收集(或向 GC 发送信号)?
谢谢