前提・実現したいこと
servletとjspを使って会員登録機能を実装したいです。
ログインメニューページから1,ログイン、2,新規登録のページに遷移させたいのですが、エラーがでてしまいます。自分では間違いがみつけられなかったのでご指摘ください。
発生している問題・エラーメッセージ
エラーメッセージ
ログイン画面への遷移:404
The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.
新規登録画面への遷移:404
The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.
該当のソースコード
ソースコード
-----login_main.jsp-----
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
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;
/**
- Servlet implementation class LoginMain
/
@WebServlet(name="/LoginControlServlet",urlPatterns= {"/login"})
public class LoginControlServlet 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 {
String path = "/WEB-INF/login.jsp";
// --↓Debug Print06_03 Add ------
System.out.println("doGet;path = " + path);
// --↑Debug Print06_03 Add ------
RequestDispatcher rd = request.getRequestDispatcher(path); rd.forward(request, response); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request,response); }
}
-----RegistrationServlet-----
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 javax.servlet.http.HttpSession;
import JavaBeans.AccountsBeans;
/**
- Servlet implementation class AccountRegister
*/
@WebServlet(name="/Registration", urlPatterns="/registration")
public class Registration extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String path = "/registration.jsp"; // --↓Debug Print06_03 Add ------ System.out.println("doGet;path = " + path); // --↑Debug Print06_03 Add ------ RequestDispatcher rd = request.getRequestDispatcher(path); rd.forward(request, response); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String name = request.getParameter("name"); String accountId = request.getParameter("accountId"); String pass = request.getParameter("pass"); int role = Integer.parseInt(request.getParameter("role")); // register.jspから受け取った値をビーンズにセット AccountsBeans ab = new AccountsBeans(); ab.setName(name); ab.setAccountId(accountId); ab.setPass(pass); ab.setRole(role); // アカウントをDBに登録 // セッションにアカウント情報を保存 HttpSession session = request.getSession(); session.setAttribute("account", ab); RequestDispatcher rd = request.getRequestDispatcher("registration.jsp"); rd.forward(request, response); }
}
試したこと
url指定の書き方を変えてみましたがうまくいきませんでした。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/15 01:19