Intellij IDE에서 톰캣을 이용해 Run 시 서버 콘솔에 Connected to server
라는 로그와 [Catalina-utility-2]
관련 로그 몇 줄 후에 추가적으로 로그가 뜨지 않고 브라우저로 접속 시 모든 엔드포인트가 404 오류를 뱉어내는 오류가 있어 해결하는 데 이틀 가량을 소비했다. xml 설정 파일을 잘못 작성하거나 web.xml(WebApplicationInitializer)에 제대로 등록하지 않아 생긴 문제 같아서(아님) 그 쪽을 만져보느라 시간을 많이 허비했다.
Run/Debug Configurations
에서 Deployment 탭의 Deploy at the server startup
에 배포 설정을 해 주지 않아 발생한 문제였다. Before launch
에 Build war exploded artifact
task가 있어 그게 그거지~ 라고 생각했는데 아니었다...
Deployment 설정을 제대로 추가해주면 artifact가 배포된다는 로그가 뜬다.
Artifact study:war exploded: Artifact is being deployed, please wait...
Application context가 요상한 걸로 바뀌는데, 이대로 실행하면 오류가 발생한다. /
나 별도로 설정된 path로 바꿔줘야 한다.
deploy 설정 추가 후에도 (EgovWeb)ServletContextListener 관련 오류가 떠서 해결했는데(EgovWebServletContextListener에서 참조하는 필수 property인 Spring.datasource.DbType
이 설정 .properties 파일에서 누락되어 생긴 문제였다) war exploded로 배포 시 정상적으로 실행되나, 그냥 war 배포 시에는 동일한 오류가 계속 발생했다
Before launch
에 Build war artifact
를 추가해주면 정상 작동한다.artifact는 Maven 등에서 빌드 결과로 나오는, Delivery/Depolyment를 위해 최종적으로 관리되는 개발 산출물을 의미한다.