회사에서 열심히 스프링 부트로 프로젝트 세팅을 하고 있었는데 급 부장님 호출..
스프링 부트가 아닌 이클립스+스프링 프레임워크로 세팅하라는 지시가 새로 내려왔음...
아 이미 다했는데...DB 연결에 테스트 페이지 만들고 있었는데...정말 마른하늘에 날벼락 같은 소리가 아닐 수 없다..
그래도 어쩌겠는가 난 부하직원...부장님의 말에 따라야 하는 걸..
스프링부트가 더 최신일텐데 왜 굳이 이클립스+스프링 프레임워크를 써야하는지 이해가 가지 않았지만 그래도 버전이라도 최신 버전을 써서 세팅해보려고 한다.
스프링 프레임워크 세팅 관련해서는 정보가 많이 없을 뿐더러 구글링을 해봐도 스프링부트 세팅일 뿐...
내가 했던 세팅을 기록해두기 위해 적어두기로..언젠가 다시 도움이 되겠지..
DevTool 세팅
- Eclipse : 2024-03
- Jdk(Java) : 17
- Spring Framework : 6.2.4
- Tomcat : 10.1.19 (11이 최신 버전이지만 이클립스 내 서버가 10까지 밖에 세팅이 없어서 10으로 세팅)
부장님이 원하는 이클립스+스프링프레임워크 세팅은 자바 1.8 / 스프링 4.* 대 지만 그건 너무 오래된 버전이라고 생각해서 이정도는 고집부려도 되지 않을까 싶다 실 업무에 사용하는 프로젝트가 아니기 때문에 가능한 행동이지만 이렇게라도 하는게 내 개발자 수명을 늘려주지 않을까..
이번 프로젝트 세팅하면서 새로이 알게된 사실! 사소하지만 이거때문에 제대로 작동하지 않았음..
Tomcat 10 버전 이상 pom.xml
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
<version>6.0.0</version>
<scope>provided</scope>
</dependency>
Tomcat 9 버전 이하 pom.xml
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
차이점은 groupId, artifactId가 javax -> jakarta 로 변경되었음..! maven을 사용할 때 헷갈릴 수도 있으니 꼭 확인을 해봐야할 것 같다. 이렇게 수정을 했는데도 혹시나 jsp 파일에서 the default superclass javax.servlet.http.httpservlet 에러가 난다면 아래 사항 체크해보길 바람..
1. Dynamic Web Module
현재 프로젝트 우클릭 -> properties -> Project Facet -> Dynamic Web Module 4.0 이상 인지 확인
2. web.xml
버전 4.0 확인 필요
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
2가지 확인해도 제대로 되어있는데도 안된다면 최후의 방법..
좀 귀찮을 수도 있겠지만 jsp에 직접 servlet 을 import 시켜줘야한다.
3. 최후의 방법 jsp 수정
page 태그의 import 추가
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" import="jakarta.servlet.http.*, jakarta.servlet.*"%>
하면 정상적으로 servlet이 작동되는 걸 알 수 있다!!
이제 편하게 개발하면 끝!
며칠동안 삽질하다가 겨우 성공했다...다음엔 DB 연결을..
'IT 개발 > BackEnd' 카테고리의 다른 글
[Eclipse/Spring] Spring MVC Tiles 설정 방법 | JSP 레이아웃 적용하기 (1) | 2025.03.28 |
---|---|
[Eclipse/Spring] ModelAndView를 이용한 페이지 이동 방법 (1) | 2025.03.26 |
[SpringBoot] Spring Security 학습법 & 실무 적용 방법 (0) | 2025.03.07 |
[SpringBoot] H2 연동을 위한 dependency 및 properties (0) | 2025.02.21 |
[SpringBoot] JSP 파일 수정 후 새로고침시 적용 안될 경우 (3) | 2025.02.18 |