2

現在、アプリを vaadin 7 に移植しており、ユーザーが過去 30 秒間ほどアクティブだったかどうかを追跡したいと考えています。以前は、カスタム CommunicationManager でユーザー アクティビティを追跡していましたが、このクラスは廃止されたため、別の方法を試す必要があるかもしれないと考えました。

UI を拡張する拡張機能を作成しました。

簡単にするために、クリックとキーボードの使用をユーザー アクティビティとしてカウントするとします。

// this is the extend method in the extension connector
@Override
protected void extend (ServerConnector target) {
  UIConnector uiConnector = (UIConnector) target;
  VUI uiWidget = uiConnector.getWidget();
  uiWidget.addDomHandler(this.keyPressed(), KeyPressEvent.getType());
  uiWidget.addDomHandler(this.mouseClicked(), ClickEvent.getType());
}

拡張機能は、30 秒ごとに RPC 経由でサーバーを呼び出すタイマーをスケジュールしますが、ユーザーがアクティブな場合のみです。このタイマーは動作します。動作しないのは DOM イベントです。追加したイベント リスナーに到達しないようです。

私は何を間違っていますか?

4

1 に答える 1