0

SAP Fioriでのリソース ロックに取り組んでいます。さらに詳しく説明すると、ユーザーがログインしてアプリケーションを開いたときにリソースをロックし、ログアウトまたはログアウトしたときにリソースのロックを解除しようとしています。

main.controller.js にあり、ユーザーがログアウトするアクションを実行した場合に呼び出されるonExit()イベント ハンドラーを認識しています。これは、ユーザーのセッションがタイムアウトした場合を除くすべてのシナリオを処理します。

セッションがタイムアウトすると呼び出されるメソッド(UI5/ゲートウェイレイヤー)を知っている人はいますか?

これがどのように処理されるかは、ユーザーのセッションがタイムアウトした場合、ユーザーが画面を更新するまで何も起こりません。この時点で、データを取得するために Odata 呼び出しが行われます。これがゲートウェイに到達すると、セッションがタイムアウトしたことが確認され、再ログイン アクションがトリガーされます。

私が間違っている場合は修正してください。正しい場合、それを行うイベントハンドラーが何であるかを誰かが知っていますか?

また、私はこれについてかなり読みました。これは、楽観的および悲観的同時実行に該当します。楽観的なアプローチではなく、悲観的なアプローチを試してみたい

etags を使用したアプローチ。

よろしくお願いいたします

また、ポリシーに違反するため、コードを公式に投稿することはできませんが、質問がある場合はお気軽にお問い合わせください。最善を尽くします:)。さらに、これは事実調査の使命です。

4

1 に答える 1

1

タイムアウトを通知するためにブラウザから実行される要求を信頼できる方法はありません。接続の切断、アプリのクラッシュ、バッテリーの消耗などにより、ロックされるべきではないロックされたリソースが発生します。Web アプリケーションの典型的な問題です。

代わりに、ロック リフレッシュ メカニズムを構築できます。バックグラウンドで 30 秒ごとにロックを更新します。ロックが解除された場合は、最新バージョンのリソースを取得してください。

于 2015-07-11T16:12:07.130 に答える