[IntelliJ] JSP 기본 객체 "Cannot resolve method ~" 에러 해결 방법

IntelliJ "servlet-api.jar" 파일 추가 방법!

IntelliJ에서 JSP 스크립트 요소를 공부하는 도중에 소스코드에서 에러가 발생했습니다.

저는 공부 중이던 예제 소스코드에서 스크립트릿, 표현식에서 request 기본 객체를 사용하는 도중에 빨간색 구문이 생기면서 에러가 발생하였습니다.

해당 문제를 해결해보도록 하겠습니다.


- 설명하기에 앞서 "macOS Mojave 버전 10.14.2" 운영체제에서 "IntelliJ ULTIMATE 2018.03", "Tomcat 9" 버전을 사용하였습니다.




에러가 발생한 부분의 메시지를 확인해보니 "Cannot resolve method 'setCharacterEncoding(java.lang.String)'"라고 출력됩니다.

해당 문제는 톰캣에서 "servlet-api.jar"파일이 추가되지 않아서 발생한 문제입니다.


이제부터 해당 파일을 추가시켜서 정상적으로 스크립트 요소에서 기본 객체를 사용할 수 있도록 설정해보겠습니다.


- 설명 전,  자신의 PC에서 "Tomcat"이 설치된 경로를 알아야 합니다.

☛ Homebrew를 이용하여 Tomcat 설치 방법 및 경로 확인







"command + ;" 키를 눌러서 "Project Structure" 창을 실행 후

사진에 나와있는 숫자(1~4) 순서대로 클릭해주세요.






사진처럼 창이 실행되면 "Macintosh HD" 디렉터리를 클릭해주세요.






"command + shift + ." 키를 누른 후 숨겨진 폴더들이 나타나면 "usr" 폴더를 클릭해주세요.






"usr -> local -> Cellar -> tomcat -> 9.0.14 -> libexec -> lib -> servlet-api.jar"

클릭 후 "Open"을 클릭해주세요.

("9.0.14"는 톰캣 버전입니다.

자신의 PC에서 사용하는 톰캣 버전에 따라 폴더명이 다를 수 있습니다.)






"servlet-api.jar" 파일이 추가된걸 확인 후 "OK"를 클릭해주세요.






 request 기본 객체에 발생했던 에러(빨간색 구문)가 전부 없어졌습니다.

이제 정상적으로 스크립트 요소에서 request 기본 객체를 사용하실 수 있습니다.




(내용 추가)

"servlet-api.jar" 파일뿐 아니라 "jsp-api.jar" 파일도 추가해주세요.

("jsp-api.jar" 파일의 위치는 "servlet-api.jar" 파일이랑 같은 디렉터리에 있습니다.)

2개의 파일을 추가해주면, JSP 공부 중 기본 객체를 사용하지 못하는 대부분의 문제를 해결할 수 있습니다.


"Libraries" 목록에 파일을 추가하여도 "Modules"에도 자동으로 추가됩니다.

("Libraries" 목록에 해당 파일을 추가시켜서 라이브러리를 관리해주는 방법이 좀 더 용이합니다. *아래 사진 참고)






✔︎ 오타, 잘못된 정보가 있을 경우 댓글 달아주세요~!

(확인 수정하도록 하겠습니다~^^)


✔︎ 궁금하신 정보가 있을 경우 댓글 달아주세요~!

(제가 아는 정보에 한해서 답변을 남겨드리도록 할게요~^^)

댓글