티스토리 뷰

http request

GET https://api.server.com/members?statuses=PENDING

필요한 request param

@RequestParam("statuses", required = false) statuses: List<MemberStatus>? = null,

Error 내용

No primary or single unique constructor found for interface java.util.List, requestparam

이 메시지가 나오는 이유는?

Enum을 

request body로 사용 할 때는 그냥 되는데

request parameter으로 받을 때는 컨버터가 필요하다.

Converter 생성

class MemberStatusConverter : Converter<String, MemberStatus> {
  override fun convert(source: String): MemberStatus {
    return MemberStatus.valueOf(source)
  }
}

Converter 등록(webflux)

class ApiBaseWebfluxConfig : WebFluxConfigurer {
  override fun addFormatters(registry: FormatterRegistry) {
    registry.addConverter(MemberStatusConverter())
  }
}

 

'Error' 카테고리의 다른 글

Gradle: Spring 프로젝트 Main이 없을 때 발생하는 오류  (0) 2023.02.22
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함