파일 입력 NPE

개발새발log·2022년 8월 9일
0

problem

  • to solve: 여러개의 파일 입력받기 오류
@PostMapping(path = "{userId}", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
public CommonResponse<CPostsDTO, String> writePost(@PathVariable Long userId,
                                                       @ModelAttribute CPostRequest request,
                                                       @RequestPart(value = "files", required = false) List<MultipartFile> files
                                                       ){
     log.info("files: {}", files); //null
     return new CommonResponse(cPostsService.saveCPost(userId, request.getContent(), files), ResultMessage.RESULT_OK.getVal());
}

✅ solved

modelattribute으로 한꺼번에 받는 방식으로 변경했다. 슬프게도 스웨거로는 따로따로 text 형식, file 형식 지정할 수 없어서 포스트맨으로만 따로 요청을 넣어야하지만,,

public class CPostRequest {
    @NotNull
    private String content;
    @Size(max = 5)
    private List<MultipartFile> imgs;
}

그나저나 왜 RequestPart으로 이미지가 안 넘어온건지는 여전히 의문..

profile
⚠️ 주인장의 머릿속을 닮아 두서 없음 주의 ⚠️

0개의 댓글