본문 바로가기
  • 평범한 나의 개발공부 일지
나의 개발 기록/Java /Spring

전자정부프레임워크에서 *.do 확장자 없이 접근하도록 수정해보기

by 블랑 블랑 2022. 8. 18.
반응형


전자정부프레임워크로 이미 만들어진 틀에 사용하다보니
*.do 확장자에 맞게 설정이 되있었다
그래서 .do 없이 url에 접근할 수 있도록 수정해보려고 한다.


1. web.xml

수정전

	<servlet-mapping>
		<servlet-name>action</servlet-name>
		<url-pattern>*.do</url-pattern>
	</servlet-mapping>


수정후

	<servlet-mapping>
		<servlet-name>action</servlet-name>
		<url-pattern> / </url-pattern>
	</servlet-mapping>





마지막에는 꼭maven - update project clean 해주자!





+++ 문제점이 생겼다.
css파일을 불러오려고 하니
No mapping found for HTTP request with URI [/css/egovframework/sample.css]
css경로를 못찾아 오는것이었다.

왜냐?
내가 url-pattern을 / 로 설정한게
기존에 있던 기본 servlet에 덮어씌워져 버려서
여러 파일(js, css 등)을 못찾아오는것이라고 한다.

이 문제에 대한 전자정부프레임워크의 답변
(출처 : https://www.egovframe.go.kr/home/qainfo/qainfoRead.do?menuNo=69&qaId=QA_00000000000012664)

<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.js</url-pattern>
<url-pattern>*.css</url-pattern>
<url-pattern>*.jpg</url-pattern>
<url-pattern>*.gif</url-pattern>
<url-pattern>*.png</url-pattern>
<url-pattern>*.ico</url-pattern>
<url-pattern>*.swf</url-pattern>
</servlet-mapping>


얘를 web.xml에 추가해주면 된다.
추가적으로 별도맵핑을 만들어주는 방법이라고 한다.
위에 코드를 추가해주니
더이상 오류가 나지않고 css경로를 아주 잘 찾았다.

반응형

댓글