1. 콘솔 로그 이슈 1(JXLS 버전 문제)
회사 제품의 데이터 엑셀 다운로드 기능 실행 시 값이 'null'인 데이터에 대해서는 출력하지 않으면 되는데, 굳이 아래와 같은 로그를 찍는 이슈가 있었다.
"1018 [AWT-EventQueue-0] WARN org.apache.commons.jexl2.JexlEngine - org.jxls.expression.JexlExpressionEvaluator.evaluate@61![0,19]: ‘변수명' inaccessible or unknown property transaction"
스택오버플로우의 몇 가지 글을 보자 버전업을 해야한다는 의견이 다수였고, 실제로 2.4.6 버전이던 JXLS를 2.10.0 버전으로 업그레이드 함으로써 더이상 null값에 대한 경고 로그는 뜨지 않게 되었다.
2. 콘솔 로그 이슈 2(POI, JXLS 버전 문제)
동일 회사 제품의 엑셀 다운로드 기능 실행 시 아래와 같이 Illegal reflective access operation 경고 로그가 찍히는 이슈가 있었다.
"warning: an illegal reflective access operation has occurred warning: illegal reflective access by org.apache.poi.openxml4j.util.zipsecurefile$1 (file:/c:/users/become/.gradle/caches/modules-2/files-2.1/org.apache.poi/poi-ooxml/3.17/7d8c44407178b73246462842bf1e206e99c8e0a/poi-ooxml-3.17.jar) to field java.io.filterinputstream.in warning: please consider reporting this to the maintainers of org.apache.poi.openxml4j.util.zipsecurefile$1 warning: use --illegal-access=warn to enable warnings of further illegal reflective access operations warning: all illegal access operations will be denied in a future release"
이는 POI 버전업이 필요한 문제라는 것을 깨닫고, 3.17 버전이던 POI를 4.1.2 버전으로 업그레이드했다. 뿐만 아니라 POI 4.1.2 버전과 호환하기 위해 JXLS-POI 버전 역시 1.0.15에서 2.10.0으로 업그레이드 하였다. (참고. JXLS-POI 1.0.15 버전은 POI 3.17 버전과 호환된다.)
'Backend > Spring' 카테고리의 다른 글
Spring) 바이너리 파일을 DB에 저장 후 요청에 의해 바로 다운로드하기 (0) | 2021.12.06 |
---|---|
Spring) Poi와 Jxls를 사용해 Template을 이용한 워드 다운로드 (0) | 2021.12.06 |
Spring) Poi와 Jxls를 사용해 Template을 이용한 파워포인트 다운로드 -2. 테이블 작성 (0) | 2021.11.28 |
Spring) Poi와 Jxls를 사용해 Template을 이용한 파워포인트 다운로드 (0) | 2021.11.21 |
Spring) Poi와 Jxls를 사용해 Template을 이용한 엑셀 다운로드 (0) | 2021.09.06 |