[error] spring 오프라인, 내부망에서 배포, xsd 읽기

공수정·2021년 11월 17일
1

error

목록 보기
8/10
  • 문제상황

    온라인에서 배포 테스트를 진행 했을 때에는 문제가 없었는데, 오프라인으로 테스트를 진행하니 오류가 발생했다. 오류는 root-context.xml에서 beans의 요소를 찾을수 없다거나 아니면 url을 읽을 수 없다

  • 원인

    원래는 url을 통해서 xsd를 읽어오는데 오프라인 상황이니 읽어오지 못해서 발생하는 에러였다.

  • 해결방법

    root-context.xml 파일에서 url을 통해서 xsd를 읽어오던 것을 프로젝트 내에 포함된 jar에서 읽어와야한다. ( xsd는 jar내에 포함되어있다 )
    1. root-context.xml에서 beans가 오류가 난다고 하면, maven dependencies나 lib폴더에서 spring-beans.jar를 열어보면 META_INF 폴더가 있고, 그 안에 spring.shemaas 파일을 메모장이나 텍스트 편집기 등으로 연다.
    jar 파일은 압축파일이기 때문에 반디집이나 알집으로 확인 할 수 있다. 이클립스에서는 바로 열린다.

    1. beans가 오류로 잡혔다면 해당 파일에서
      http\://www/~~spring-beans-스프링버전.xsd=[복사해야하는 부분]
      스프링 버전에 맞게 = 이후를 복사한 다음
    2. root-context.xml 파일에서
      http\://www/~~spring-beans classpath:[붙여넣기 하는부분]
      이런식으로 띄어쓰기 이후에 classpath:를 적은뒤 복사 한 것을 붙여넣기하면 된다.

참고
1. [스프링][Spring][offline]인터넷 없이 오프라인 내부망에서 xsd 읽어오기

profile
계속해서 공부하는 개발자입니다 :)

0개의 댓글