错误信息:java.lang.AbstractMethodError

错误信息:java.lang.AbstractMethodErrorjava.lang.AbstractMethodError:org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerClient.choose(Ljava/lang/String;Lorg/springframework/cloud/client/loadbalancer/Request;)Lorg/springframework/cloud/client/ServiceInstance;错误信息详细如下:org.springframewo

大家好,又见面了,我是你们的朋友全栈君。

java.lang.AbstractMethodError: org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerClient.choose(Ljava/lang/String;Lorg/springframework/cloud/client/loadbalancer/Request;)Lorg/springframework/cloud/client/ServiceInstance;

错误信息详细如下:

org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.AbstractMethodError: org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerClient.choose(Ljava/lang/String;Lorg/springframework/cloud/client/loadbalancer/Request;)Lorg/springframework/cloud/client/ServiceInstance;
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1075)
	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:962)
	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
	at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:888)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1597)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.base/java.lang.Thread.run(Thread.java:844)
Caused by: java.lang.AbstractMethodError: org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerClient.choose(Ljava/lang/String;Lorg/springframework/cloud/client/loadbalancer/Request;)Lorg/springframework/cloud/client/ServiceInstance;
	at org.springframework.cloud.openfeign.loadbalancer.FeignBlockingLoadBalancerClient.execute(FeignBlockingLoadBalancerClient.java:88)
	at feign.SynchronousMethodHandler.executeAndDecode(SynchronousMethodHandler.java:119)
	at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:89)
	at feign.ReflectiveFeign$FeignInvocationHandler.invoke(ReflectiveFeign.java:100)
	at com.sun.proxy.$Proxy137.getCourseInfoById(Unknown Source)
	at cn.wufen.orderservice.service.impl.TOrderServiceImpl.saveOrder(TOrderServiceImpl.java:39)
	at cn.wufen.orderservice.service.impl.TOrderServiceImpl$$FastClassBySpringCGLIB$$d80bffad.invoke(<generated>)
	at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
	at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:688)
	at cn.wufen.orderservice.service.impl.TOrderServiceImpl$$EnhancerBySpringCGLIB$$b434cefb.saveOrder(<generated>)
	at cn.wufen.orderservice.controller.TOrderController.save(TOrderController.java:33)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:564)
	at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:197)
	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:141)
	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:894)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1060)
	... 43 more

最近在写项目,一部分功能需要通过微服务进行远程调用,需要注册进nacos,加入相关依赖后,系统启动出错(当时没保存错误信息),然后在网上找答案,需要加入依赖,使用loadbalancer负载均衡:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-loadbalancer</artifactId>
    <version>2.2.5.RELEASE</version>
</dependency>
  • 一段时间运行没问题,远程调用微服务,删除阿里云上的视频也没问题。
  • 后续需要通过多个微服务远程调用,出现了问题,一直报错!
  • 在做评论功能时,就一直报错,功能点做完,一直也没办法测试,也搁置在那!
  • 经过分析,发现了原因是因为我引入了loadbalancer负载均衡,当时不知道没有生效,后续发现需要将ribbon排除掉,才能使loadbalancer生效。
<dependency>
     <groupId>org.springframework.cloud</groupId>
     <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
     <!--问题:具体见error文件-->
     <exclusions>
         <exclusion>
             <groupId>org.springframework.cloud</groupId>
             <artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
         </exclusion>
     </exclusions>
</dependency>

排除掉ribbon后,远程调用就可以使用了!!!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/143933.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月20日 下午2:40
下一篇 2022年5月20日 下午2:40


相关推荐

  • 国内好的破解软件下载站

    国内好的破解软件下载站MSDNhttps://msdn.itellyou.cn/吾爱破解:https://www.52pojie.cn/爱学府软件园:https://www.52pojie.cn/HKC资源网:https://zy.hongkexueyuan.com/0DayDownhttp://www.0daydown.com/奥学网https://6so.so/果核剥壳http://www.ghboke…

    2022年6月11日
    127
  • SSC展频

    SSC展频何谓 SSC 展频 spreadspectr SSC 所有会产生频率信号的电子组件都是潜在的电磁干扰 EMI 源 这些信号将会影响如收音机 电视或者移动电话等电子产品的正常运作 SSC 让时钟慢慢地一点点地变化来分散输出时钟的能量 其原理类似于图 1 所示的例子 让水压 频谱能量 一定的水从一个小孔 固定频率 中喷出 这和让它从淋浴喷头的多个小孔 分散频率 中喷出的效果是不同的 后者的水压得到了分散 水的喷出力度 辐射噪声 会变小很多 SSC 不仅对时钟振荡频率 基波 有抑制作用 对高次谐

    2026年3月19日
    3
  • CAD拉伸的快捷命令_cad拉伸实体快捷键

    CAD拉伸的快捷命令_cad拉伸实体快捷键CAD快捷键在CAD绘图中是不可或缺的,刚入门CAD的小伙伴们一定要熟练掌握常用CAD快捷键命令的使用。那么CAD拉伸快捷键命令是什么呢?又该如何使用呢?下面小编就来给大家介绍一下浩辰CAD软件中CA

    2022年8月4日
    9
  • 微信接入DeepSeek来了!3步开启AI助手,实用又方便

    微信接入DeepSeek来了!3步开启AI助手,实用又方便

    2026年3月14日
    2
  • linux renice命令,Linux操作系统的renice命令详解

    linux renice命令,Linux操作系统的renice命令详解Linux 操作系统的基础知识并不是很难理解 熟悉掌握基础知识能更好的学习 Linux 下面由学习啦小编为大家整理了 Linux 操作系统的知识点总结的相关知识 希望对大家有帮助 Linux 操作系统的 renice 命令详解 renice 功能说明 调整优先权 语 法 renice 优先等级 g p u 补充说明 renice 指令可重新调整程序执行的优先权等级 预设是以程序

    2026年3月18日
    2
  • 千问能否导出PPT到本地_千问PPT导出格式与保存路径设置【技巧】

    千问能否导出PPT到本地_千问PPT导出格式与保存路径设置【技巧】

    2026年3月13日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号