작성
·
25
·
수정됨
0
[질문 내용]
zip파일 구글 드라이브입니다.
https://drive.google.com/file/d/1ZleZzt2LirbgIQYJbj7zs7zmLnee7HFa/view?usp=sharing
강의 잘 듣고 있습니다. 본론부터 말씀드리자면
마지막 강의에서 애플리케이션 실행해서 localhost:8080/log-bemo 에 접속하는 부분부터 안됩니다.
현재 압축 파일에서 풀고 실행하면 NoUniqueBeanDefinitionException으로 스프링 작동 자체가 안되는데 MemoryMemberRepository에 @Primary를 붙이면 일단 실행은 됩니다. 강의에서는 MemoryMemberRepository에 @Primary를 붙인 기억이 없어 일단 지우고 압축했습니다.
실행이 되어도 /log-demo 로 들어가면
16:58:17.197 [http-nio-8080-exec-2] DEBUG o.s.web.servlet.DispatcherServlet --
Exiting from "ERROR" dispatch, status 404
16:58:27.583 [http-nio-8080-exec-3] DEBUG o.s.web.servlet.DispatcherServlet --
GET "/log-demo", parameters={}
16:58:27.584 [http-nio-8080-exec-3] DEBUG o.s.w.s.h.SimpleUrlHandlerMapping --
Mapped to ResourceHttpRequestHandler [classpath [META-INF/resources/], classpath [resources/], classpath [static/], classpath [public/], ServletContext [/]]
16:58:27.587 [http-nio-8080-exec-3] DEBUG o.s.w.s.r.ResourceHttpRequestHandler --
Resource not found
16:58:27.587 [http-nio-8080-exec-3] DEBUG o.s.w.s.m.s.DefaultHandlerExceptionResolver --
Resolved [org.springframework.web.servlet.resource.NoResourceFoundException: No static resource log-demo.]
16:58:27.587 [http-nio-8080-exec-3] DEBUG o.s.web.servlet.DispatcherServlet --
Completed 404 NOT_FOUND
16:58:27.587 [http-nio-8080-exec-3] DEBUG o.s.web.servlet.DispatcherServlet --
"ERROR" dispatch for GET "/error", parameters={}
16:58:27.588 [http-nio-8080-exec-3] DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping --
Mapped to org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController#errorHtml(HttpServletRequest, HttpServletResponse)
16:58:27.590 [http-nio-8080-exec-3] DEBUG o.s.w.s.v.ContentNegotiatingViewResolver --
Selected 'text/html' given [text/html, text/html;q=0.8]
16:58:27.591 [http-nio-8080-exec-3] DEBUG o.s.web.servlet.DispatcherServlet --
Exiting from "ERROR" dispatch, status 404
이런 오류가 뜨는데 왜 이렇게 되는지 이해가 잘 안됩니다..
답변 2
0
안녕하세요, 인프런 AI 인턴입니다.
애플리케이션 실행 시 localhost:8080/log-demo 접속과 관련된 오류에 대해 도움 요청 주셨군요. 비슷한 상황에서 발생한 오류 해결법을 제공하는 기존 답변과 자료들을 찾았습니다.
Bean Definition 오류: NoUniqueBeanDefinitionException은 동일한 타입의 빈이 여러 개 정의되어 있을 때 발생합니다. 이 경우에는 스프링 빈 설정에서 두 개 이상의 동일한 타입의 빈이 등록된 상황일 수 있습니다. 필요한 경우 @Primary
애너테이션을 사용하여 기본 빈을 지정할 수 있습니다. 그러나, 강의에서 MemoryMemberRepository
에 @Primary
를 추가하지 않았다면, 다른 부분에서 빈 설정을 조정해야 할 수 있습니다.
404 에러 해결법: /log-demo
URL로 접근 시 404 오류가 발생하는 경우, 이는 해당 URL을 처리하는 Controller가 정상적으로 매핑되지 않았을 수 있습니다. 이 문제는 스캔되지 않거나 잘못된 경로의 Controller 문제일 수 있습니다.
아래의 관련 질문들을 통해 이 문제에 대한 해결법을 참고해 보시기 바랍니다:
application 실행 시 log-demo 페이지 404 에러가 뜹니다.: 이 게시물에서는 @Controller 애너테이션이 잘못된 위치에 사용되어 매핑이 정상적으로 작동하지 않은 경우입니다. 확인해 보시기 바랍니다.
스코프와 Provider 강의에서 질문합니다.: 포트 충돌과 관련된 부분이 있으니 다른 응용 프로그램이 동일한 포트를 사용하고 있는지 확인해 보세요.
이 질문들이 문제 해결에 도움이 되길 바랍니다. 특히 컨트롤러가 올바르게 매핑되고 있는지 확인하고, 동일한 타입의 빈이 여러 개 등록되지 않았는지 다시 확인해 보세요.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.