Error

[Springboot - 에러해결]Resolved [org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation]

chea-young

1. 에러 메시지

Resolved [org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation]

 


2. 원인

 - ContentsController

1
2
3
4
5
6
7
8
9
10
11
12
13
14
    /**
     * content의 이미지 저장
     */
    @PostMapping("/new/image")
    public ResponseEntity<?> saveImage(@RequestPart(required = false) MultipartFile newImage) throws IOException {
        log.info("Contents controller: api/contents/new/image -----------------------");
        // test 용 contents 데이터
        Contents contents = contentsService.saveTestContents();
 
        // 이미지 저장
        Contentsfile contentsfile = s3Uploader.upload(contents, newImage, "contents");
        log.info("Contents controller: api/contents/new/image finish -----------------------");
        return ResponseEntity.ok(new ContentsfileDTO(contentsfile));
    }
cs

 - ContentsfileDTO

1
2
3
4
5
6
7
8
9
10
public class ContentsfileDTO {
    private Long id;
    private String path;
 
    public ContentsfileDTO(Contentsfile contentsfile) {
        this.id = contentsfile.getId();
        this.path = contentsfile.getPath();
    }
}
 
 

- 이미지 올리는 API를 개발하고 테스트하는 과정에서 다음과 같은 오류가 났다


3. 해결

1
2
3
4
5
6
7
8
9
10
11
@Getter
public class ContentsfileDTO {
    private Long id;
    private String path;
 
    public ContentsfileDTO(Contentsfile contentsfile) {
        this.id = contentsfile.getId();
        this.path = contentsfile.getPath();
    }
}
 
 
 

- 핸들러가 클라이언트가 요청한 Type으로 응답을 내려줄 수 없어 @Getter를 추가해주었더니 문제를 해결할 수 있었습니다


참고 사이트

- https://taengsw.tistory.com/49