
基本的にはタイトルの質問なんですが、具体的な書き方がわかりません。
今作成しているのが
TOP画面(JSP)
・入力フォームに検索条件
↓
Servlet
・入力された条件でDB検索
何か検索されれば次画面へ遷移
何も検索されなければTOP画面へ戻る
というものですが、
public class LoginCheck1 extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException{
response.setContentType("text/html; charset=Shift_JIS");
PrintWriter out = response.getWriter();
String user = request.getParameter("user");
String pass = request.getParameter("pass");
HttpSession session = request.getSession(true);
boolean check = authUser(user, pass);
if (check){
/* 認証済みにセット */
session.setAttribute("login", "OK");
/* 本来のアクセス先へ飛ばす */
String target = (String)session.getAttribute("target");
response.sendRedirect(target);
}else{
/* 認証に失敗したら、ログイン画面に戻す */
session.setAttribute("status", "Not Auth");
response.sendRedirect("/auth/Login");
}
}
protected boolean authUser(String user, String pass){
/* 取りあえずユーザー名とパスワードが入力されていれば認証する */
if (user == null || user.length() == 0 || pass == null || pass.length() == 0){
return false;
}
return true;
}
}
サーブレットはこんな感じで書いてるんですが、
response.sendRedirect("/auth/Login");
の部分が悪いんでしょうか?
No.2ベストアンサー
- 回答日時:
HttpServletRequestクラス、HttpSessionクラスのsetAttribute、getAttributeメソッドです。
詳細はJavaDocを見て下さい。
No.1
- 回答日時:
>サーブレットはこんな感じで書いてるんですが、
>response.sendRedirect("/auth/Login");
>の部分が悪いんでしょうか?
質問者さんが期待する結果と実際の結果が書かれてないので、
この部分がどう悪いのかはよくわかりませんが…。
(やりたいことは伝わりますが…。)
検索結果うんぬんは抜きにして、
JSP1→Servlet→JSP2
という遷移を行うことができますか?
↑ができるならJSP1とJSP2に同じJSPを指定するだけです。
JSPから取得した入力値を表示するには、リクエストなりセッションに値をセットしてJSPで取得すれば良いでしょう。
この回答への補足
回答ありがとうございます。
期待する結果は
アカウント 12345
パスワード abcde と入力してそれがDBに登録してなかった場合
アカウント 12345
パスワード abcde と入力値がそのままで戻って欲しいのですが
今は、
アカウント
パスワード と消えて表示されます。
>JSP1→Servlet→JSP2
という遷移を行うことができますか?
できます。
JSP1→Servlet→JSP1となってますが。
>JSPから取得した入力値を表示するには、リクエストなりセッションに値をセットしてJSPで取得すれば良いでしょう。
どのように書けばいいんでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
三菱GOTの画面切り替えについて
-
ブラウザのIDの調べ方が解りません
-
ページ遷移せずにjava部品を実...
-
ポップアップでウィンドウを表...
-
VBS/HTA:画面のサイズを取得す...
-
"+"文字が" (スペース)"に文字...
-
ブラウザ画面で、変更した値が...
-
Ctrl+F4を無効にしたい
-
Tomcatのセットアップ
-
JSPで画面を更新するには
-
ログインについて
-
親子画面での値の受け渡し方法
-
javascriptでセッションの削除...
-
このadidasの腕時計の時刻の設...
-
Formのデータが欠落することがある
-
JSPでsession変数が勝手に書き...
-
javascriptでセッションを取得
-
グローバルIPアドレスの変更タ...
-
フォーム上で押されたボタンに...
-
DVD鑑賞時、字幕を消すには??...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
三菱GOTの画面切り替えについて
-
Java-jspの画面入力値保持について
-
C言語で今まで表示していた画面...
-
画面遷移を行わずに同一ページ...
-
ASP.NET 画面遷移前の状態を保...
-
MFCプログラミング
-
ボタンを押したあとに画像を表...
-
アドレスバーに引数を表示させ...
-
遷移元を判定したい!
-
C# ログイン画面からメイン画面...
-
Strutsのデータ受け渡しについて
-
ServletからServletへの値渡し
-
登録後、呼び出し元ページに戻...
-
検索画面→結果画面→検索画面と...
-
Strutsで画面遷移させない。
-
JSPから出力されたHTML画面のcl...
-
Beautiful Soupのインストール...
-
JAVAのセッション変数の上書き...
-
strutsで、JSP→アクションクラ...
-
ブラウザアドレスバーからのURL...
おすすめ情報