javax.servlet.ServletException: org.eclipse.jdt.internal.compiler.CompilationResult.getProblems()[Lorg/eclipse/jdt/core/compiler/IProblem;
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:272)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:142)
    org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:243)
    org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1141)
    org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:878)
    org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:792)
    org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:461)
    org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:416)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
    org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)

위의 에러로그는 이클립스에서 컴파일 하여 WAR로 묶은 다음 서버로 배포한 다음에 발생한 에러 입니다.

위의 에러를 발생시킨 애플리케이션은 로컬 웹 서버, 즉 이클립스에서 돌렸을 때는 잘 동작했는데, 배포만 하면.. 저런 에러에 마주치게 됩니다. 영문을 몰라서 구글링을 했지만 어떤 분은 yum update tomcat을 했더니 에러가 사라졌다고 하는 분도 있고, 그 밖에 알쏭 달쏭한 글들이 많이 있었습니다.

곰곰히 저 에러가 발생하기 전과 후에 무슨 일을 했는지 생각했습니다. Ant로 배포 자동화 해보려고 빌드 파일을 추가하고, Ant에서 필요하다고 하는 라이브러리들을 web/WEB-INF/lib에 넣어줬습니다.

어떤 걸 넣었지.. 하고 보는 순간... 어라. 이것들 어디서 많이 본건데.. 헉.. 톰캣 라이브러리자나..-_-;;;

라이브러리가 중복되면 저런 메시지가 발생할 수도 있나봅니다. 특히나 톰캣에 포함되어 있는 라이브러리가 중복됐을 때 위의 메시지를 보실 수 있겠죠. 아마도 jasper API 또는 servlet, jsp API가 중복되서 발생한 문제 같습니다. 저 같은 실수를 하지 마시길...