문제 상황


기존에는 로그인 버튼만 있는 화면에서
로그인 기능이 정상적으로 동작하고 있었다.
이후 회원가입 버튼을 추가하였는데,
🍃 로그인: 정상 동작
🍃 회원가입 버튼 클릭: 404 Not Found 에러 발생
즉, 회원가입 페이지로 이동하려는 순간 404 에러 발생
문제가 발생한 화면 (index.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>
<form action="login" method="POST">
<table border="1">
<tr>
<td>아이디</td>
<td><input type="text" name="mid" required></td>
</tr>
<tr>
<td>비밀번호</td>
<td><input type="password" name="mpw" required></td>
</tr>
<tr>
<td colspan="2" style="text-align:center;">
<input type="submit" value="로그인">
<a href="signUp">
<button type="button">회원가입</button>
</a>
</td>
</tr>
</table>
</form>
</body>
</html>
index.jsp는 이런 형식이고
▪ 로그인 버튼 → /login 요청
▪ 회원가입 버튼 → /signUp 요청
에러 내용
Whitelabel Error Page
There was an unexpected error (type=Not Found, status=404)
회원가입 버튼 클릭 시 다음과 같은 에러 발생
원인 분석
@GetMapping("/index")
@PostMapping("/login")
컨트롤러에 /signUp 요청을 처리하는 메서드가 없었음
당시 컨트롤러에는 다음 매핑만 존재했다.
/index → 로그인 화면
/login → 로그인 처리
Spring Boot는
요청 URL과 매핑되는 컨트롤러 메서드가 하나도 없으면 404를 반환한다.
👉 JSP 파일(signUp.jsp)이 존재하더라도
👉 컨트롤러 매핑이 없으면 직접 접근 불가
signUp.jsp 있음 ❌
@GetMapping("/signUp") 없음 ❌
→ 결과: 404 에러
해결 방법
@GetMapping("/signUp")
public String signUp() {
return "signUp";
}
/signUp 요청을 처리하는 메서드 추가

동작 흐름
- 회원가입 버튼 클릭
- /signUp 요청 발생
- 컨트롤러가 요청을 받음
- signUp.jsp로 View 반환
'에러&문제해결' 카테고리의 다른 글
| Spring : Failed to determine a suitable driver class 에러와 해결 방법 (0) | 2026.01.29 |
|---|---|
| Spring : UnsatisfiedDependencyException 에러 원인과 해결 과정 (0) | 2026.01.28 |
| eclipse 톰캣 경로 (다른 컴퓨터에서 톰캣 에러 날 때) (0) | 2026.01.02 |
| 세션에 없는 값 : "javax.servlet.http.HttpSession.getAttribute(String)" is null (0) | 2025.12.31 |
| 카카오 API | 엔드포인트 문제 해결! (0) | 2025.12.31 |