개발 도중 500 에러에 부딪쳤다.

 

 java.lang.NoClassDefFoundError:

                             org.apache.jsp.xxxxxx___.jsp.
                             xxxxxx

 

에러 발생 원인은 컴파일이 제대로 되지 않아서 생긴 듯 하다.

빌드 문제인 줄 알고 Project clean 을 수차례 해보았는데 이 방법으로는 해결이 안되었다.

jar 파일 없는 문제인 줄 알고 tomcat lib 폴더에 복붙해보았으니 아닌 거 같아 원복하였다.

 

여하튼 에러를 해결하려면

컴파일 된 폴더를 삭제하여 다시 컴파일 될 수 있도록 해줘야한다.

 

* 폴더 경로 : 

...\프로젝트명\.metadata\.plugins\org.eclipse.wst.server.core

 

org.eclipse.wst.server.core 파일 안의 내용물 전체삭제 후 이클립스 재실행하면

컴파일이 정상적으로 완료된다.

 

예전에도 겪었던 문제였는데 잊어버려서

같은 에러였는데도 해결하는데 시간이 다소 소요되었다.

구글링해보니 어떤 사람은 jsp 파일명을 바꾼 이후 같은 에러가 발생하였다고 하는데

나는 자바스크립트 소스를 수정하다가 해당 에러가 발생한 경우라

에러 원인을 파악 못해서 힘들었다.

 

 

Eclipse에서 Tomcat 실행 시 발생하는 에러 문구.

 

심각 : Error configuring application listener of class org.springframework.web.context.ContextLoaderListener

.....

 

프로젝트 우클릭 > Maven > Update Project...

을 진행하면 추가하였던 Maven Dependencies 가 사라져서 발생하는 에러이다.

 

 

해결 방법은 
프로젝트 우클릭 > Properties > Deployment Assembly 선택
Add... > Java Build Path Entires > Maven Dependencies 추가 후 Finish

 

이후 Tomcat 재기동하면 정상적으로 톰캣이 실행된다.

 

input 입력값이 인코딩 깨져서 들어올때

Tomcat 사용중이라면 server.xml 파일 확인

 

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>

윗부분을 찾아서 아래와 같이 URIEncoding을 추가해준다.

 

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>

서버 커넥터의 default값은 iso-8859-1 이기 때문에
utf-8을 사용중이라면 설정을 바꿔주어야 한다.

+ Recent posts