EmbedTomcatServletMain 실행 시 발생하는 오류
1299
작성한 질문수 2
complete 코드를 사용해도 다음과 같은 오류가 나옵니다
Caused by: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@35cabb2a]
답변 3
4
안녕하세요. 저도 같은 문제가 있었는데 아래 두가지 방법 중 하나로 해결했습니다.
환경은 Windows 에 IntelliJ 였습니다.
#1 특정 폴더 생성하여 해결
에러 리스트 두번째 줄에 나오는 내용을 보고 tomcat:8080 아래에 webapps 폴더 추가 후 실행
Caused by: java.lang.IllegalArgumentException: The main resource set specified [D:\Spring_boot_edu\boot-source-20230228\start\embed\tomcat.8080\webapps\] is not valid
#2 pdf 교재 (3.스프링 부트와 내장 톰캣.pdf) 에서 추가하는 코드를 넣어서 해결 했습니다.
//서블릿 등록
Context context = tomcat.addContext("", "/");
//== 코드 추가 시작==
File docBaseFile = new File(context.getDocBase());
if (!docBaseFile.isAbsolute()) {
docBaseFile = new File(((org.apache.catalina.Host)
context.getParent()).getAppBaseFile(), docBaseFile.getPath());
}
docBaseFile.mkdirs();
//== 코드 추가 종료==
tomcat.addServlet("", "helloServlet", new HelloServlet());
context.addServletMappingDecoded("/hello-servlet", "helloServlet");
tomcat.start();
잘 해결 되시기 바랍니다. ^^
0
안녕하세요. newve1님, 공식 서포터즈 David입니다.
도움을 드리고 싶지만 질문 내용만으로는 답변을 드리기 어렵습니다.
실제 동작하는 전체 프로젝트를 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.
구글 드라이브 업로드 방법은 다음을 참고해주세요.
주의: 업로드시 링크에 있는 권한 문제 꼭 확인해주세요
추가로 다음 내용도 코멘트 부탁드립니다.
1. 문제 영역을 실행할 수 있는 방법
2. 문제가 어떻게 나타나는지에 대한 상세한 설명
감사합니다.
0
안녕하세요, 인프런 AI 인턴이에요.
오류 메시지에 보면 “Caused by: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@35cabb2a]“라고 나와 있네요. 이 오류는 웹 리소스를 관리하는 컴포넌트인 StandardRoot가 시작에 실패한 것을 나타내는 메시지입니다.
이 경우, 일반적으로 다음과 같은 몇 가지 이유로 발생할 수 있습니다.
웹 리소스 디렉토리 경로 오류: 웹 리소스 디렉토리 경로가 잘못된 경우에 이 오류가 발생할 수 있습니다. 디렉토리 경로를 확인하고 올바른 경로를 설정해보세요.
파일 권한 오류: 웹 리소스 디렉토리에 접근할 권한이 없을 경우에도 이 오류가 발생할 수 있습니다. 디렉토리의 권한을 확인하고 필요한 권한을 설정해보세요.
톰캣 버전 호환성 문제: 사용하고 있는 톰캣 버전과 웹 애플리케이션의 호환성에 문제가 있을 경우에도 이 오류가 발생할 수 있습니다. 톰캣 버전을 확인하고 호환되는 버전을 사용해보세요.
더 자세한 원인을 파악하려면 추가적인 오류 메시지나 스택 트레이스를 살펴봐야 할 수도 있습니다. 추가로 오류 메시지나 스택 트레이스 등을 제공해주시면 더 정확한 도움을 드릴 수 있을 것 같아요.
보안이 엄격한 데이터
0
73
1
MyProperties 자체를 클라이언트 코드에서 사용
1
43
1
http://localhost:8080/actuator/prometheus
0
85
3
jar 추가에대한 질문드려도될까요?
0
64
1
build.gradle bom link 변경
0
65
2
@Counted 초기화
0
47
1
@Validated를 적용해도 빈 검증이 안되는 경우에 대한 조치 공유..
0
101
2
springboot에서 actuator없이 micrometer를 사용할수 있나요?
0
67
1
@Configuration 질문드립니다.
0
84
2
[공유] 터미널 말고 IDE 에서 jar 실행하기
0
101
1
localhost:8080/hello-servlet 404오류
0
123
2
내장톰캣2 서블릿 톰켓 실행이 안됩니다
1
154
2
최대 Tomcat 스레드 수를 확인하는 지표
0
160
1
mac m2에서 startup.sh 실행후 아무 반응이 없습니다.
0
94
2
내장 톰캣 실행 오류 관련 질문드립니다.
0
158
1
스프링 발전 과정들도 자세히 알아둬야하나요??
1
127
1
스프링부트 ioc 컨테이너 갯수
0
89
1
404 페이지
0
133
3
actuator 호출시 타임스탬프 질문
0
90
1
순수 라이브러리 사용하기 2 - memory-v1
0
125
1
외부설정 @ConfigurationProperties의 내부 클래스에서 static을 사용하는 이유를 알고 싶습니다.
0
105
1
서블릿 컨테이너 초기화1 강의 관련 질문입니다~
0
93
1
Thread Config Max 패널 설정 변경 질문
0
128
1
스프링 액츄에이터 shutdown 엔드포인트 활성화가 안됩니다.
0
107
1





