私はJSP Web開発の初心者です。私は私が達成したいのは、ユーザーが資格情報を提供するとき、標準のログイン制御(例えば、ユーザー名、パスワードのテキストボックス、私のチェックボックスとログインボタンを覚えている)を持っている私のwebapp用のログイン(Login.jsp) Authenticate.jspが呼び出され、資格情報がデータベースと照合されます。正しい場合、そのユーザーのセッションが作成され、資格情報が正しくない場合。私はstatus
パラメータは常にチェックされ、それが価値fail
を与えるとき、私は、このような障害時にユーザーにメッセージUser Name or Password Incorrect!
を持っているテキストボックス以下<div>
が示されている、login.jspをオンresponse.sendRedirect("./Login.jsp?status=fail");
JSPでログインページを実装する優雅な方法
でログインページに戻ってユーザーをリダイレクト。 URLを介してそのようなパラメータを送信することは安全ですか?このようなものを実装するための、より適切な、あるいは標準的な方法は何ですか?また、初めてユーザーがログインページにアクセスしたときに、status
パラメータを検索すると、NullPointerException
が送出されます。私は以下のようにパラメータをチェックするためのLogin.jspコード全体を持っています。
try
{
String stat = request.getParameter("Status");
if(stat.equalsIgnoreCase("fail"))
msg = "Invalid Username or Password!";
else
msg = " ";
}
catch(NullPointerException e)
{
msg = " ";
}
catch(Exception e)
{
out.println(e);
}
そして、私が述べたようmsg
文字列オブジェクトがその<div>
に書いていること。したがって、status
パラメータが見つからない場合は、ユーザーが最初にそのページにアクセスしていると見なされ、間違った資格情報のメッセージは表示されません。
これは実際のシステムではこれがどのように実装されているのかわかりません。
私を訂正します。
ありがとうございました。
注:ウェブ上で同じクエリを検索している間、ほとんどのページでログイン失敗のJSPページが異なっていましたが、そのためには1ページしか保存しません。
私はApache Shiroの概要を調べましたが、間違いなく試してみます。しかし、私はサードパーティ製のフレームワークなしで使用できるソリューションを探しています.Java EE APIだけを使って行うことができます。 – Kushal
フレームワークを使用しないと、実際のアプリケーションで多くの作業を行うことになります –