반응형
이슈
POI는 아파치에서 만든 라이브러리로서 마이크로소프트 오피스 파일 포맷을 순수 자바 언어로서 읽고 쓰는 기능을 제공한다.
회사 제품에 데이터를 엑셀로 다운받을 수 있는 기능이 있는데 톰캣이나 Jetty was를 사용하였을 때는 아무런 에러가 발생하지 않았지만, weblogic을 사용하는 사이트에서 아래와 같은 에러가 발생하였다.
java.lang.NoClassDefFoundError: Could not initialize class org.apache.poi.POIXMLTypeLoader
원인
제품에서 사용하는 POI 라이브러리와 Weblogic에서 자체적으로 지원하는 POI 라이브러리와 충돌해서 발생하는 에러이다.
해결
WEB-INF 아래에 weblogic.xml 파일 생성 후 아래와 같은 옵션 추가하여 어플리케이션 내에 라이브러리를 우선적으로 사용하도록 설정한다.
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
반응형
'Java > 기본' 카테고리의 다른 글
[JAVA] Marker Interface : 아무것도 선언되지 않은 인터페이스 (0) | 2021.12.28 |
---|---|
[JAVA] Constant Interface : 상수를 정의한 인터페이스 (1) | 2021.12.28 |
[JAVA] HEX String to bytes (0) | 2021.09.28 |
[JAVA] Runtime.addShutdownHook() : 프로그램 종료될 때 특정 작업 수행 (0) | 2021.09.16 |
[JAVA] CountDownLatch : 다른 쓰레드를 기다리는 방법 (0) | 2021.09.16 |