inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

3. 웹개발 코스 [Enterprise Architecture(EA) X 전자정부프레임워크]

제3강 Spring MVC패턴

http://localhost:8080/Egov_WEB/main2.do 요청 관련

178

taeyoul.im

작성한 질문수 2

0

3장 학습 테스트에서
URL 이 https://inf.run/3Ujcb

로 작동합니다.

 

Controller에서의 RequestMapping은

@RequestMapping(value="/main2.do") 로 정의되었습니다.

 

URL에 "Egov_WEB" 이 왜 들어가야 하는 것인가요?

브라우저에서 "http://localhost:8080/main2.do" 로 입력하면 오류가 나구요.

 

 

spring 전자정부프레임워크

답변 4

0

개발자Park

안녕하세요. 밤늦게 질문을 주셔서 확인이 늦은 점 죄송합니다.

원래 실제로 배포 시에는 프로젝트 이름은 보통 생략해줍니다.

(예:http://localhost:8080/main2.do )

그러나 학습 강의이기에 여기서는 다루지 않았습니다.

[Q강의에서처럼 Egov_WEB이 자동으로 안들어갑니다.]

A해결방법:

1.

프로젝트 생성 시 아래 그림처럼 전자정부프레임워크환경에서 생성을 하셔야 합니다.

 

image.png

2.

프로젝트 실행 시 아래 사진처럼 자동으로 추가되는 것이 원래는 맞습니다.

이를 확인해보심이 좋겠습니다.

복사붙여넣기용도:

<Context docBase="Egov_WEB" path="/Egov_WEB" reloadable="true" source="org.eclipse.jst.jee.server:Egov_WEB"/></Host>

(그림 확대해서 보기:마우스 우 클릭 - 새 탭에서 열기)

(왼쪽 목록의 Servers->server.xml을 열어주세요)

image.png

감사합니다.

0

taeyoul.im

main2.jsp 테스트 코드는

 

<form action="/main3.do" method="post">

<input type="hidden" name="userNo" value="10">

<input type="text" name="id">

<input type="password" name="pw">

<input type="submit" name="제출">

</form>

입니다.

 

실행을 하여 "제출"버튼을 클릭하면

브라우저에서 "http://localhost:8080/main3.do" 로 실행되어 "HTTP 상태 404 – 찾을 수 없음" 오류가 발생합니다.

<form action="/Egov_WEB/main3.do" method="post"> 로 하면

"http://localhost:8080/Egov_WEB/main3.do" 로 실행되어 정상 작동합니다.

답변해주신 "“Egov_WEB”는 프로젝트가 배포된 컨텍스트(root)" 부분이 어디에서 설정되어야 하는 것인가요?

 

0

taeyoul.im

제가 main.jsp에서

<body>

<form action="/main3.do" method="post">

<input type="hidden" name="userNo" value="10">

<input type="text" name="id">

<input type="password" name="pw">

<input type="submit" name="제출">

</form>

</body>

코드를 실행하고, 화면에서 "제출" 버튼을 클릭하면

브라우저에서 "http://localhost:8080/main3.do" 로 실행되어 "HTTP 상태 404 – 찾을 수 없음" 에러가 발생합니다.

 

강의에서는 정상적으로 실행되는데, 저는 "http://localhost:8080/Egov_WEB/main3.do" 로 실행이 않되어, 오류가 발생하는 것 같습니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. taeyoul.im님.

전자정부 프레임워크에서의 URL 매핑 관련 질문에 대해 안내해 드리겠습니다. URL 경로에 “Egov_WEB”가 포함되는 이유는 일반적으로 프로젝트의 Context Root 설정에 의한 것입니다. 웹 애플리케이션 서버(Tomcat 등)에서 Context Root는 기본적으로 프로젝트 폴더명을 따르지만, 경우에 따라 설정 파일(web.xml 등)을 통해 변경될 수 있습니다.

문제의 핵심:

  1. Context Root와 상대 경로: “Egov_WEB”는 프로젝트가 배포된 컨텍스트(root)입니다. 이는 Tomcat 등의 서버에서 프로젝트의 기본 경로가 설정되며, 예제로 들면, http://localhost:8080/Egov_WEB/ 가 됩니다.

  2. 잘못된 경로 사용: “http://localhost:8080/main2.do”로 요청을 하게 되면, Context Root를 무시한 경로가 되어 서버는 해당 경로의 요청을 처리할 수 없다고 판단하여 오류를 반환합니다.

해결 방법:

  • 정확한 경로 사용: URL 요청 시 항상 http://localhost:8080/Egov_WEB/main2.do와 같은 방식을 사용하여 Context Root를 포함해야 합니다. 이는 프로젝트의 기본 경로에 따라 다를 수 있으므로 설정 확인이 필요합니다.

참고 자료:

  • 매핑값 질문입니다! 이 게시물에서는 비슷한 요청 매핑 문제에 대해 다루었으며, 디스패쳐 서블릿 설정과 관련된 다른 문제가 제기되었습니다.

추가적인 도움이 필요하거나 설정 파일(web.xml 등)에 대한 세부적인 점검이 필요하시면 더 많은 정보를 제공해 주시거나, 특정 설정을 첨부해주시기 바랍니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

6강 실컷 진행하다가 마지막 실행부분에서 안되요...

0

87

2

이전버전 강의 쿠폰 받을 수 있나요?

0

104

2

jdk-17로 해도 상관없나요?

0

145

2

제6강. No bean named 'MainService' available 에러 발생

0

285

2

인텔리제이 세팅

0

163

2

1,2강 환경 구축시 메이븐 에러

0

594

2

Egov_WEB3 로그인을 하면 에러가 납니다.

0

282

3

db로 mariaDB가아니라 MySQL을 사용해도 괜찮을까요?

0

127

1

안녕하세요~ 쿠폰 관련해서 질문드립니다

0

105

1

혹시 이 강의부터 결제하면 "스프링 프레임워크+전자정부 표준프레임워크"의 강의를 들을수 없나요?

0

152

2

7강 질문드립니다

0

111

2

Egov_WEB3 실행시 에러질문드립니다.

0

166

2

7강 프로시저 호출하기 부분에서 Oracle의 경우 resultMap을 어떻게 받을 수 있을까요?

0

268

2

스프링 프레임워크+전자정부 표준프레임워크 강의 쿠폰요청 메일

0

170

1

질문있습니다

0

142

1

현강의 및 국비지원 수강생입니다.

0

172

1

수정, 삭제 기능 관련 질문있습니다

0

241

2

13강 제공해주신 소스코드 중 boardList.do 에러

0

182

1

MainMapper.xml 파일에 프로시저 관련하여

0

328

3

강의자료 중 프로젝트 파일 여는 방법

0

314

2

전자정부표준프레임워크에서 마리아 디비 말고 다른 디비를 써도 되나요?

0

199

1

15강#1 질문드립니다.

0

209

2

파일을 다운로드 로드중 문제가 생겼습니다

0

182

1

제6강#0 질문입니다.

0

304

3