표준프레임워크 4.1.0 에서의 엑셀다운로드 불능 현상
- 작성자 :
- 윤*환
- 작성일 :
- 2023-03-23 10:16:28
- 조회수 :
- 1,793
- 구분 :
- 개발환경 / 4.1
- 진행상태 :
- 완료
Q
개발환경을 내려받아 사용하진 않았고
본 사이트의 [구성 - 오픈소스 SW 현황] 메뉴에 나와있는대로 라이브러리 버전을 맞추고
메이븐으로 프레임워크 4.1.0 버전을 적용하여 사용하고 있습니다.
그런데 프레임워크 적용 후 엑셀다운로드 시 다음과 같은 오류가 발생하였습니다.
java.lang.IllegalStateException: Cannot call sendRedirect() after the response has been committed
디버깅을 해보니 POI 의 org.apache.poi.ss.usermodel.Cell.getCellType() 이 deprecated 되어 삭제되었는데
jXLS 의 net.sf.jxls.parser.CellParser 클래스 내 parseCellFormula 라는 메소드에서 getCellType() 을 호출하여
java.lang.NoSuchMethodError 가 발생하였고 엑셀다운로드 중에 에러페이지로 리다이렉션되면서 오류가 발생하고 있던 것이었습니다.
[구성 - 오픈소스 SW 현황] 메뉴에는 프레임워크 4.1.0 버전이 POI 5.2.2 와 jXLS 1.0.6 을 사용하고 있다고 되어있는데
라이브러리의 일부를 커스터마이징해서 사용하고 있는 건가요?
jXLS 버전을 올리면 문제가 해결되겠지만 호환성확인 신청 준비를 하고있어서 라이브러리 버전을 임의로 변경하기 어렵습니다.
어떻게 해야하나요?
본 사이트의 [구성 - 오픈소스 SW 현황] 메뉴에 나와있는대로 라이브러리 버전을 맞추고
메이븐으로 프레임워크 4.1.0 버전을 적용하여 사용하고 있습니다.
그런데 프레임워크 적용 후 엑셀다운로드 시 다음과 같은 오류가 발생하였습니다.
java.lang.IllegalStateException: Cannot call sendRedirect() after the response has been committed
디버깅을 해보니 POI 의 org.apache.poi.ss.usermodel.Cell.getCellType() 이 deprecated 되어 삭제되었는데
jXLS 의 net.sf.jxls.parser.CellParser 클래스 내 parseCellFormula 라는 메소드에서 getCellType() 을 호출하여
java.lang.NoSuchMethodError 가 발생하였고 엑셀다운로드 중에 에러페이지로 리다이렉션되면서 오류가 발생하고 있던 것이었습니다.
[구성 - 오픈소스 SW 현황] 메뉴에는 프레임워크 4.1.0 버전이 POI 5.2.2 와 jXLS 1.0.6 을 사용하고 있다고 되어있는데
라이브러리의 일부를 커스터마이징해서 사용하고 있는 건가요?
jXLS 버전을 올리면 문제가 해결되겠지만 호환성확인 신청 준비를 하고있어서 라이브러리 버전을 임의로 변경하기 어렵습니다.
어떻게 해야하나요?
환경정보
-
- OS 정보 : WINDOWS 10 Pro 64비트 (10.0, 빌드 19044)
- 표준프레임워크 버전 : 4.1.0
- JDK(JRE) 정보 : 오라클 openjdk 1.8.0.201-1
- WAS 정보 : Apache Tomcat 9.0.63
- DB 정보 : 오라클 12.2.0.1
- 기타 환경 정보 : 이클립스 2020-12
A
안녕하세요.
표준프레임워크센터입니다.
[구성 - 오픈소스 SW 현황] 에 기술한 라이브러리 버전에
오기가 있어서 아래와 같이 변경하였습니다.
표준프레임워크 4.1 기준으로
POI : 5.2.2
JXLS : 2.11.0
그리고, 표준프레임워크 실행환경에서
엑셀 처리를 위한 라이브러리인
org.egovframe.rte.fdl.excel-4.1.0.jar 를 제공하고 있으니
pom.xml 파일에 아래 의존성을 추가하여
구성하시기 바랍니다.
<dependency>
<groupId>org.egovframe.rte</groupId>
<artifactId>org.egovframe.rte.fdl.excel</artifactId>
<version>${org.egovframe.rte.version}</version>
</dependency>
감사합니다.
표준프레임워크센터입니다.
[구성 - 오픈소스 SW 현황] 에 기술한 라이브러리 버전에
오기가 있어서 아래와 같이 변경하였습니다.
표준프레임워크 4.1 기준으로
POI : 5.2.2
JXLS : 2.11.0
그리고, 표준프레임워크 실행환경에서
엑셀 처리를 위한 라이브러리인
org.egovframe.rte.fdl.excel-4.1.0.jar 를 제공하고 있으니
pom.xml 파일에 아래 의존성을 추가하여
구성하시기 바랍니다.
<dependency>
<groupId>org.egovframe.rte</groupId>
<artifactId>org.egovframe.rte.fdl.excel</artifactId>
<version>${org.egovframe.rte.version}</version>
</dependency>
감사합니다.