質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
servlet

Servletとは、Webページの動的な生成やデータ処理などをサーバ上で実行するために、Javaで作成されたプログラムです。 ショッピングサイトやオンラインバンキングといった、動的なウェブサイトの構築に用いられています。

解決済

ログイン画面でエラーメッセージつけたい

kobito
kobito

総合スコア13

servlet

Servletとは、Webページの動的な生成やデータ処理などをサーバ上で実行するために、Javaで作成されたプログラムです。 ショッピングサイトやオンラインバンキングといった、動的なウェブサイトの構築に用いられています。

1回答

0評価

0クリップ

24393閲覧

投稿2018/02/17 08:47

package model;

public class Massage {
private String error;

/** * @return error */ public String getError() { return error; } /** * @param error セットする error */ public void setError(String error) { this.error = error; }

}

・servlet

package servlet;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import dao.LoginInfoDao;

/**

  • Servlet implementation class LoginServlet

*/
@WebServlet("/LoginServlet")
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;

/** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse * response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub RequestDispatcher dispatcher = request.getRequestDispatcher("/WEB-INF/jsp/login.jsp"); dispatcher.forward(request, response); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse * response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); String loginId = request.getParameter("loginId"); String password = request.getParameter("password"); LoginInfoDao loginInfoDao = new LoginInfoDao(); String id = loginInfoDao.findByLogin(loginId, password); if (id != null) { RequestDispatcher dispatcher = request.getRequestDispatcher("/WEB-INF/jsp/Employeelist.jsp"); dispatcher.forward(request, response); } else { request.setAttribute("message", "IDまたはパスワードが違います"); request.getRequestDispatcher("/WEB-INF/jsp/login.jsp").forward(request, response); return; } }

}

・jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>管理</title> </head> <body> <h1>管理</h1>

<span class="label label-danger">${message.error}</span>

<form action="/manage/LoginServlet" method="post"> ログインID:<input type="text" name="loginId"><br> パスワード:<input type="password" name="password"><br> <input type="submit" value="ログイン"> </form> </body> </html>

これで設定したパスを入力すればログインはできますが
ログイン失敗したときエラーメッセージを出したいのですが
そこで詰んでしまいました。

よろしければご指導の方よろしくお願いいたします。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

unz.hori

2018/02/18 04:22

コードは</>を使って張り付けてください。またエラーメッセージをどのように出したいのか具体的に記述してください。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

servlet

Servletとは、Webページの動的な生成やデータ処理などをサーバ上で実行するために、Javaで作成されたプログラムです。 ショッピングサイトやオンラインバンキングといった、動的なウェブサイトの構築に用いられています。