問題タブ [vaadin14]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - ユーザーがまだ認証されていない場合、ビューへのアクセスを処理する方法は?
私の Vaadin 14 のメインページはルート Route を持つ MainView です。
MainView
は他のビューの「テンプレート」として使用されるため (with layout = MainView.class
)、それ自体で初期化するべきではなく、レイアウトとして他のビューにのみ使用される「抽象」ビューのように見えます。
今の問題: ユーザーがにアクセスするMainView
とBeforeEnterEvent
、コンストラクターの後に呼び出されます。これは、ユーザーがまだ認証されておらず、コンストラクターがすでにタブの構築などを実行しているため、例外がスローされる可能性があります。
ユーザーが MainView のルートまたはコンストラクターが呼び出される前に実行されるイベントにアクセスできないようにする方法はありますか? ビューへのアクセスは、ユーザーが認証されている場合にのみ許可されます。
アップデート:
この修正は、Vaadin 14.2の実験的機能としてリリースされています。
java - {Java} Vaadin 14 - ユーザーを 1 つのアクティブ UI に制限する
この質問java-vaadin-14-detect-user-leave-closes-tab-f5-etcを投稿しましたが、間違った質問をしたと思います。
サインインしている各ユーザーを、アクティブなブラウザー タブまたは UI を 1 つだけに制限したいと考えています。
を使用するよう誰かに言われましたが、このリストは、ユーザーがページを更新するたびにVaadinSession.getCurrent().getUIs()
1 (有効になっている場合は 2 ) ずつ増加します。@Push
これは、このリストに複数 (または 2 つ) が含まれているかどうかを確認できないことを意味します。
私はこれで迷っています!ネイティブの Java アプリケーションと組み込みのログイン システムを使用すると、各ユーザーを 1 つのセッションに簡単に制限できます。ブラウザだと難しい。それともそうではないのでしょうか?