2
원격 서비스와 통신하기 위해 Feign
을 사용하려고하는 스프링 부팅 응용 프로그램이 있습니다. 내가 JSON으로 직렬화되는 유형 SomeServicePayload
의 payload
객체를 원하는FeignClient : RequestParam을 JSON으로 serialize
@FeignClient(name="TEST_SERVICE", url="URL")
@Component
public interface SomeServiceClient
{
@RequestMapping(
method = RequestMethod.POST,
value = "/someService",
consumes = "application/json",
produces = "application/json"
)
SomeServiceResult getServiceResult(
@RequestParam(value = "mode") String mode,
@RequestParam(value = "payload") SomeServicePayload payload
);
}
다음과 같이 내 @FeignClient
가 정의됩니다. 나는 이것이 자동적으로 일어날 것을 기대했으나 그렇지 않다. 대신 payload
은 정규화 된 클래스 이름으로 serialize됩니다.
이 클라이언트에 대해 사용자 지정 인코더/디코더 조합을 설정해야합니까? 어떻게하면 좋을까요?