feign.FeignException:在微服务调用中读取状态 4​​04

feign.FeignException: status 404 reading in microservice invoke

当我像这样调用微服务 rest api 时:

Response<List<RoomPlay>> response = reportRoomHappyBombDetailController.happybombRoomDetailAnalysis(BizAnalysisConstant.DEFAULT_ANALYSIS_PREV_DAY, roomPlay.getId());

抛出此错误:

2020-04-01 23:46:00.954 ERROR 1 --- [cTaskExecutor-1] c.s.s.r.c.room.RoomCreateMessageHandler  : 统计执行遇到问题
feign.FeignException: status 404 reading IReportRoomHappyBombDetailController#happybombRoomDetailAnalysis(Integer,Long)
    at feign.FeignException.errorStatus(FeignException.java:78) ~[feign-core-10.1.0.jar!/:na]
    at feign.codec.ErrorDecoder$Default.decode(ErrorDecoder.java:93) ~[feign-core-10.1.0.jar!/:na]
    at feign.SynchronousMethodHandler.executeAndDecode(SynchronousMethodHandler.java:149) ~[feign-core-10.1.0.jar!/:na]
    at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:78) ~[feign-core-10.1.0.jar!/:na]
    at feign.ReflectiveFeign$FeignInvocationHandler.invoke(ReflectiveFeign.java:103) ~[feign-core-10.1.0.jar!/:na]
    at com.sun.proxy.$Proxy178.happybombRoomDetailAnalysis(Unknown Source) ~[na:na]
    at com.sportswin.soa.report.consume.room.RoomCreateMessageHandler.roomDetailStatistic(RoomCreateMessageHandler.java:161) [classes!/:na]
    at com.sportswin.soa.report.consume.room.RoomCreateMessageHandler.staticPlayRoom(RoomCreateMessageHandler.java:148) [classes!/:na]
    at com.sportswin.soa.report.consume.room.RoomCreateMessageHandler.handle(RoomCreateMessageHandler.java:105) [classes!/:na]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_212]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_212]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_212]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_212]
    at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:170) [spring-messaging-5.1.5.RELEASE.jar!/:5.1.5.RELEASE]
    at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:120) [spring-messaging-5.1.5.RELEASE.jar!/:5.1.5.RELEASE]
    at org.springframework.amqp.rabbit.listener.adapter.DelegatingInvocableHandler.invoke(DelegatingInvocableHandler.java:130) [spring-rabbit-2.1.4.RELEASE.jar!/:2.1.4.RELEASE]
    at org.springframework.amqp.rabbit.listener.adapter.HandlerAdapter.invoke(HandlerAdapter.java:60) [spring-rabbit-2.1.4.RELEASE.jar!/:2.1.4.RELEASE]
    at org.springframework.amqp.rabbit.listener.adapter.MessagingMessageListenerAdapter.invokeHandler(MessagingMessageListenerAdapter.java:190) [spring-rabbit-2.1.4.RELEASE.jar!/:2.1.4.RELEASE]
    at org.springframework.amqp.rabbit.listener.adapter.MessagingMessageListenerAdapter.onMessage(MessagingMessageListenerAdapter.java:127) [spring-rabbit-2.1.4.RELEASE.jar!/:2.1.4.RELEASE]
    at org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:1547) [spring-rabbit-2.1.4.RELEASE.jar!/:2.1.4.RELEASE]
    at org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer.actualInvokeListener(AbstractMessageListenerContainer.java:1473) [spring-rabbit-2.1.4.RELEASE.jar!/:2.1.4.RELEASE]
    at org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:1461) [spring-rabbit-2.1.4.RELEASE.jar!/:2.1.4.RELEASE]
    at org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:1456) [spring-rabbit-2.1.4.RELEASE.jar!/:2.1.4.RELEASE]
    at org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer.executeListener(AbstractMessageListenerContainer.java:1405) [spring-rabbit-2.1.4.RELEASE.jar!/:2.1.4.RELEASE]
    at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.doReceiveAndExecute(SimpleMessageListenerContainer.java:870) ~[spring-rabbit-2.1.4.RELEASE.jar!/:2.1.4.RELEASE]
    at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.receiveAndExecute(SimpleMessageListenerContainer.java:854) ~[spring-rabbit-2.1.4.RELEASE.jar!/:2.1.4.RELEASE]
    at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.access00(SimpleMessageListenerContainer.java:78) ~[spring-rabbit-2.1.4.RELEASE.jar!/:2.1.4.RELEASE]
    at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.mainLoop(SimpleMessageListenerContainer.java:1137) ~[spring-rabbit-2.1.4.RELEASE.jar!/:2.1.4.RELEASE]
    at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.run(SimpleMessageListenerContainer.java:1043) ~[spring-rabbit-2.1.4.RELEASE.jar!/:2.1.4.RELEASE]
    at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_212]

这是我的服务器端代码:

@RequestMapping(value = "/analysis/app/happybomb/room")
@FeignClient(name = "soa-report-analysis-service")
public interface IReportRoomHappyBombDetailController {
    @GetMapping("/overview")
    Response<List<RoomPlay>> happybombRoomDetailAnalysis(@RequestParam(required = false, defaultValue = "2", value = "lastDay") Integer lastDay,
                                                         @RequestParam(required = false, value = "roomPlayId") Long roomPlayId);
}

服务可以成功接收请求和响应,但是客户端抛出这个错误messsage.I我很困惑哪里出了问题?Spring引导版本2.1.3,Spring云Version:Greenwich.SR1.

将实现此接口的注释由@Controller更改为@RestController,或添加@ResponseBody注释。有效!