旅行アプリを開発しています。このフライトを通じて、ホテル、バスのチケットが予約されます。製品ベースのアプリケーションです。ほぼ 25 のクライアントがあります (まだ開発中のため、3 つのクライアントが使用しています)。すべてのクライアントに対して 1 つのサーバーを維持しています。1 つのサーバー (アプリケーション) 複数のクライアントは、私のアプリケーションの大きな成果です。しかし、問題は、すべてのクライアントが EBS、HDFC、ICICI、ATOM などの送金用に異なる支払いゲートウェイを使用していることです。支払いゲートウェイ システムを呼び出すには sendRedriect() を使用する必要があります。
response.sendRedirect("hdfc link....");
リダイレクトする前に、ほぼ 7 ~ 9 個のオブジェクトをセッション スコープに保存しており、各オブジェクトにはほぼ 35 ~ 50 個の変数が含まれています。私のアプリケーションにリダイレクトされる支払いゲートウェイプロセスの完了後。セッションを受けようとすると
request.getSession();
数回(10回中5回)新しいセッションを作成しています。
リクエスト スコープに格納される変数は、私にとって非常に重要です。それらは非常に巨大であるため、データベースに保存できません。すべてのリクエストに対して、長さが 25 の乱数を生成しています。その乱数を使用して、セッション変数が保存されます。
session.setAttribute("flightStatus"+randomNumber, flightstatus object);
したがって、以前のセッションを取り戻す方法と、以前のセッションが無効になり、新しいセッションが作成される理由を提案してください。