eGovFrame 표준프레임워크 포털

메뉴 건너띄기
상단메뉴 바로가기
본문 바로가기

이 누리집은 대한민국 공식 전자정부 누리집입니다.

본문 영역

적용 지원, FAQ, Q&A 게시판을 통해 기술 문제 해결을 지원합니다.

묻고 답하기

톰켓 war 배포 문의
  • 작성자

    d****n

  • 작성일

    2024-10-24 16:14:34

  • 조회수

    477

  • 구분

    개발환경 / 4.2

  • 진행상태

    완료

질문

내장 톰켓 포함하여 jar로 빌드 후 배포 시 잘 동작하는데
톰켓 서버에 war파일로 빌드 후 배포 시 해당 오류 발생합니다.
spring-boot-starter-tomcat provided 설정
SpringBootServletInitializer 상속 다 설정한 상태입니다.
해결방법 부탁드립니다.

환경정보
    - OS 정보 : Ubuntu 22.04.5
    - 표준프레임워크 버전 : egovframe-template-simple-backend 4.2
    - JDK(JRE) 정보 : 11
    - WAS 정보 : tomcat 9.0.73
    - DB 정보 :
    - 기타 환경 정보 :
첨부파일
  • 화면 캡처 2024-10-24 161109.png [420,409 Byte]

    다운로드
답변

안녕하세요
표준프레임워크센터입니다.

아래 4가지 항목대로 수정 부탁드립니다.

1. log4j-slf4j-impl와 log4j-to-slf4j 충돌 오류 해결

pom.xml에서 spring-boot-starter-web의 spring-boot-starter-logging 의존 설정 제거
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <exclusions>
        <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
        </exclusion>
    </exclusions>
</dependency>

2. pom.xml에 spring-modules-validation 라이브러리 제거

3. EgovProperties 관련 오류 해결

egovframework.com.cmm.service.EgovProperties에
if ( props.getProperty(keyName) != null )을 추가

public static String getProperty(String keyName) {
    ...
    try (...)
    ...
        props.load(new java.io.BufferedInputStream(in));
        if ( props.getProperty(keyName) != null )
            value = props.getProperty(keyName).trim();
    ...

4. servletContext 중복 선언으로 인한 multiple ContextLoader* definitions 오류 해결

egovframework.com.config.EgovWebApplicationInitializer에
addRootContext(servletContext);를 제거

감사합니다.

이 페이지의 구성

묻고 답하기