Vaadin フレームワークを使用して Web アプリケーション GUI を作成しています。
Vaadin ボタンがあり、そのクリック リスナー コードがアプリケーションのカスタム例外をスローする場合があります。アプリケーション コードの他のポイントでは、この例外はカスタム ウィンドウ クラスにスローされ、そこで集中的に処理されます。ここで似たようなことをしたいと思います。この例外を clickListener コードでスローして、ウィンドウ クラスのカスタム ターミナル エラー ハンドラでキャッチできるようにします。クリックリスナークラスは例外をスローしないため、そこで例外をスローすることはできず、例外をローカルで処理する必要があると思います。ボタン クリック リスナー レベルで例外を処理したくないので、カスタム ウィンドウ クラスに転送すると思います。このようなもの:
Button btnNew = new Button("New", new Button.ClickListener() {
public void buttonClick(ClickEvent event) {
try {
doThingThatThrowsException();
} catch (Exception exc) {
window.handleCustomException()
}
}
});
これは、Vaadin を使用してカスタム例外の処理を集中化する通常の方法ですか?