표준프레임워크 2.6 에서 log4j 2.16적용시 에러가 납니다.
- 작성자 :
- 임*혁
- 작성일 :
- 2021-12-16 15:20:13
- 조회수 :
- 3,272
- 구분 :
- 개발환경 / 3.6
- 진행상태 :
- 완료
Q
표준프레임워크 2.6 사용중에 있습니다. 이번 log4j 보안취약점 사태로 현재 log4j 최신버전인 2.16 을 적용하려고 하는데 was 구동중에 오류가 발생합니다.
확인결과 log4j 2.13.3까지는 오류가 발생하지 않고, 2.14이상부터 발생하는 것 같습니다.
오류내용은 아래와 같습니다.
오류내용
Unable to process Jar entry [org/apache/logging/log4j/core/appender/rewrite/MapRewritePolicy$Mode.class] from Jar [jar:file:/C:/eGovFrameDev-3.6.0-64bit/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp18/wtpwebapps/{패키지명}/WEB-INF/lib/log4j-core-2.16.0.jar!/] for annotations
java.io.EOFException
at java.io.DataInputStream.readUnsignedShort(Unknown Source)
at org.apache.tomcat.util.bcel.classfile.Utility.swallowMethodParameters(Utility.java:188)
at org.apache.tomcat.util.bcel.classfile.Attribute.readAttribute(Attribute.java:159)
at org.apache.tomcat.util.bcel.classfile.FieldOrMethod.<init>(FieldOrMethod.java:76)
at org.apache.tomcat.util.bcel.classfile.ClassParser.readMethods(ClassParser.java:226)
at org.apache.tomcat.util.bcel.classfile.ClassParser.parse(ClassParser.java:101)
at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:1987)
at org.apache.catalina.startup.ContextConfig.processAnnotationsJar(ContextConfig.java:1940)
at org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1915)
at org.apache.catalina.startup.ContextConfig.processAnnotations(ContextConfig.java:1876)
at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1145)
at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:767)
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:302)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)ㅌ
어떻게 해결해야하는지 답변 부탁드립니다. 감사합니다.
확인결과 log4j 2.13.3까지는 오류가 발생하지 않고, 2.14이상부터 발생하는 것 같습니다.
오류내용은 아래와 같습니다.
오류내용
Unable to process Jar entry [org/apache/logging/log4j/core/appender/rewrite/MapRewritePolicy$Mode.class] from Jar [jar:file:/C:/eGovFrameDev-3.6.0-64bit/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp18/wtpwebapps/{패키지명}/WEB-INF/lib/log4j-core-2.16.0.jar!/] for annotations
java.io.EOFException
at java.io.DataInputStream.readUnsignedShort(Unknown Source)
at org.apache.tomcat.util.bcel.classfile.Utility.swallowMethodParameters(Utility.java:188)
at org.apache.tomcat.util.bcel.classfile.Attribute.readAttribute(Attribute.java:159)
at org.apache.tomcat.util.bcel.classfile.FieldOrMethod.<init>(FieldOrMethod.java:76)
at org.apache.tomcat.util.bcel.classfile.ClassParser.readMethods(ClassParser.java:226)
at org.apache.tomcat.util.bcel.classfile.ClassParser.parse(ClassParser.java:101)
at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:1987)
at org.apache.catalina.startup.ContextConfig.processAnnotationsJar(ContextConfig.java:1940)
at org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1915)
at org.apache.catalina.startup.ContextConfig.processAnnotations(ContextConfig.java:1876)
at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1145)
at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:767)
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:302)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)ㅌ
어떻게 해결해야하는지 답변 부탁드립니다. 감사합니다.
환경정보
-
- OS 정보 : 윈도우10
- 표준프레임워크 버전 : 2.6
- JDK(JRE) 정보 : 1.8
- WAS 정보 : tomcat8
- DB 정보 :
- 기타 환경 정보 :
A
안녕하세요.
표준프레임워크센터입니다.
표준프레임워크 v2.x에서는
라이브러리의 버전차이가 크므로
바로 적용이 되지 않습니다.
다음 표준프레임워크 업그레이드 가이드를 참조하셔서
최신버전으로 업그레이드 후 Log4j 업그레이드를 진행하셔야 합니다.
https://www.egovframe.go.kr/home/ntt/nttRead.do?pagerOffset=0&searchKey=&searchValue=&menuNo=75&bbsId=3&nttId=1778
그외에
다음 자주묻는 질문을 확인하실수 있습니다.
https://www.egovframe.go.kr/home/faqinfo/faqinfoRead.do?pagerOffset=0&searchKey=&searchValue=&menuNo=68&faqId=FAQ_0000000000000812
감사합니다.
표준프레임워크센터입니다.
표준프레임워크 v2.x에서는
라이브러리의 버전차이가 크므로
바로 적용이 되지 않습니다.
다음 표준프레임워크 업그레이드 가이드를 참조하셔서
최신버전으로 업그레이드 후 Log4j 업그레이드를 진행하셔야 합니다.
https://www.egovframe.go.kr/home/ntt/nttRead.do?pagerOffset=0&searchKey=&searchValue=&menuNo=75&bbsId=3&nttId=1778
그외에
다음 자주묻는 질문을 확인하실수 있습니다.
https://www.egovframe.go.kr/home/faqinfo/faqinfoRead.do?pagerOffset=0&searchKey=&searchValue=&menuNo=68&faqId=FAQ_0000000000000812
감사합니다.