Sparkjava 이미지 엑박 오류 대응 방안
화려한 엑박이 나를 감싼다.
Sparkjava
로 띄운 로컬 서버에 html로 열심히 이미지를 띄워보려고 했으나 엑박만이 나를 반겨주었다. 결론은 메인에서 아래 메서드를 호출시켜야 static file
인 이미지가 정상적으로 로딩된다.
staticFiles.location(path);
이 때 이미지가 있는 path를 넣어주기만 하면 잘 되면 좋으련만... 예상치 못한 동작을 한다.
실험을 위한 테스트 경로들
- 응답하는 html과 동일 폴더에 이미지 파일 위치
- html과 다른 폴더에 이미지 파일 위치
- 2번 폴더의 내부 폴더에 이미지 파일 위치
path에 올바르지 않은 경로를 적을 경우
당연하게도 모두 엑박이 맞아주신다. 예상 가능한 결과라 감흥은 없다.
path에 이미지가 위치한 폴더의 경로를 적을 경우
예를 들어 다음과 같다면
staticFiles.location("/testFolder");
testFolder
내에 위치한 이미지들이 정상 출력될 것이라 기대되지 않는가?
그러나 이 경우 2, 3번이 모두 실패하고 html과 동일 폴더에 이미지가 위치한 경우인 1번만 정상적으로 로딩된다.
- 응답하는 html과 동일 폴더에 이미지 파일 위치 -> 성공
- html과 다른 폴더에 이미지 파일 위치 -> 실패
- 2번 폴더의 내부 폴더에 이미지 파일 위치 -> 실패
path에 빈 경로(기본 경로)만을 적을 경우
예를 들어 다음과 같다면
staticFiles.location("");
1, 2, 3번 모든 경우에서 성공하겠다고 예상되는가?
그러나 이 경우 1번만 실패하고 2, 3번이 모두 성공한다.
- 응답하는 html과 동일 폴더에 이미지 파일 위치 -> 실패
- html과 다른 폴더에 이미지 파일 위치 -> 성공
- 2번 폴더의 내부 폴더에 이미지 파일 위치 -> 성공
결론
사실 잘 모르겠다. 제이슨
에게 살짝 질문을 드렸지만
어차피 나중에 쓸 거 아니니(이번 레벨 1체스 미션에서만 쓰니) 별로 중요하지 않아요.
빌드 된 이후 상대 경로 설정이 달라져서 그런 걸 거예요.제이슨 - 주말 오후 게더
staticFiles
내부 코드까지 봤지만 문제될 상황을 모르겠어서 가볍게 넘어가려고 한다.
응~ sparkjava
안 쓰면 그만이야~
그래도 써야하는 불쌍한 사람들을 위한 결론
1. staticFiles.location("");
넣고 이미지 담긴 폴더 경로 넣기
2. staticFiles.location(존재하는 폴더 경로);
넣고 html이랑 같은 폴더에 이미지 넣기
참조
Author And Source
이 문제에 관하여(Sparkjava 이미지 엑박 오류 대응 방안), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@sojukang/Sparkjava-이미지-엑박-오류-대응-방안저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)