0

JSF 2.0 を使用して Web アプリケーションを作成しました。ログインしている従業員の ID を保持するセッション Bean を 1 つ作成しました。

問題は、コーディングを変更して tomcat をオンラインで再起動すると、Null Pointer 例外が発生することです (システムからログアウトしていない場合。システムからログアウトした場合、Null ポインタ例外は発生しません)。これを克服するには、ブラウザーの履歴を消去する必要があり、問題は解決されます。

以下は、プロジェクトをオンラインにするための手順です。

  1. コードを変更する
  2. war ファイルを VPS にコピーする
  3. Tomcat をシャットダウンする
  4. ROOTフォルダを削除
  5. war ファイル名を ROOT.war に変更します。
  6. tomcat を再起動します

どうすればいいのか教えてください....

4

1 に答える 1

0

何をしたいですか ?

何が起こっているのかというと、ブラウザを閉じない場合、ユーザーはまだセッション中、Cookie、セッションIDなどが存在します。

IEを閉じずにサーバーを再起動すると(あなたが言うように)、ブラウザはサーバー上のセッションIDを探しますが(再起動したため)、nullPointerExceptionがスローされます。

何もする必要はありません。これは予想される動作です。サーバーを再起動する前にログアウトするか、サーバーを再起動した後にブラウザを閉じます(セッションはタブ内で維持されるため、新しいタブは機能しません)。プログラムは正常に機能し、nullpointerは取得されません。

お役に立てれば。

于 2012-09-25T10:30:29.943 に答える