spring boot veresion: 2.3.0.RELEASE spring-cloud-starter-openfeign: 2.2.3.RELEASE
First of all I have contract interface with method:
@RequestMapping("/api/v1/subscriptions")
interface SubscriptionsV1Contract {
@PostMapping("/search")
fun search(
@RequestHeader(Consts.Headers.HEADER_INITIATOR_NAME) initiator: UUID,
@RequestBody search: SubscriptionDto.Search,
pageable: Pageable
): Slice<SubscriptionDto.Read>
}
In my service i configure correspond feign client:
@Configuration
@EnableFeignClients
class FeignConfig {
@Bean
fun pageJacksonModule(): Module = PageJacksonModule()
@FeignClient(name = "subscriptions-v1-api", url = "\${tg-subscriptions.connection.url}")
interface SubscriptionsV1Api : SubscriptionsV1Contract
}
When i try to start any spring boot test following error appears:
Caused by: java.lang.IllegalStateException: Method has too many Body parameters: public abstract org.springframework.data.domain.Slice com.subscriptions.api.v1.contract.SubscriptionsV1Contract.search(java.util.UUID,com.subscriptions.api.v1.model.SubscriptionDto$Search,org.springframework.data.domain.Pageable)
Warnings:
-
at feign.Util.checkState(Util.java:129)
at feign.Contract$BaseContract.parseAndValidateMetadata(Contract.java:127)
at org.springframework.cloud.openfeign.support.SpringMvcContract.parseAndValidateMetadata(SpringMvcContract.java:191)
at feign.Contract$BaseContract.parseAndValidateMetadata(Contract.java:62)
at feign.ReflectiveFeign$ParseHandlersByName.apply(ReflectiveFeign.java:151)
at feign.ReflectiveFeign.newInstance(ReflectiveFeign.java:49)
at feign.Feign$Builder.target(Feign.java:269)
at org.springframework.cloud.openfeign.HystrixTargeter.target(HystrixTargeter.java:38)
at org.springframework.cloud.openfeign.FeignClientFactoryBean.getTarget(FeignClientFactoryBean.java:343)
at org.springframework.cloud.openfeign.FeignClientFactoryBean.getObject(FeignClientFactoryBean.java:301)
at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:171)
... 109 more
Comment From: OlgaMaciaszek
This issue contains a discussion on that along with workarounds. Please let me know if the workarounds solve your issue.
Comment From: spring-projects-issues
If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.
Comment From: spring-projects-issues
Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.