• Error creating bean with name 'com.cloud.feign.interfaces.xxxFeignClient': FactoryBean threw exception on object creation; nested exception is java.lang.IllegalSt.PathVariable annotation was empty on


    环境:

      Spring Cloud:Finchley.M8

      Spring Boot:2.0.0.RELEASE

    报错信息:

      

    Error creating bean with name 'com.cloud.feign.interfaces.xxxFeignClient': FactoryBean threw exception on object creation; nested exception is java.lang.IllegalSt.PathVariable annotation was empty on 
    

    Feign接口代码:

    @FeignClient(value = "SPRING-CLOUD-WEB-PROVIDER-GROUP2")
    public interface SongFeignClient {
        @GetMapping("/call/{id}")
        public Object getSongInfo(@PathVariable int id);
    }

    报错信息关键点:

      

    PathVariable annotation was empty on 
    

      

    问题就出在接口方法入参@PathVariable注解这里,在Spring Mvc中可以不明确指定该注解对应的参数名称,但在feign中必须指定,否则将保如上异常,修后的正确代码如下:

    @FeignClient(value = "SPRING-CLOUD-WEB-PROVIDER-GROUP2")
    public interface SongFeignClient {
        @GetMapping("/call/{id}")
        public Object getSongInfo(@PathVariable("id") int id);
    }
  • 相关阅读:
    Mybatis中#{}与${}的区别:
    JDBC
    JavaScript与jQuery的区别
    JavaScript 高级
    AdminLTE
    servlet过滤器与监听器
    数据库连接池
    大对象数据LOB的应用
    Serializable
    泛型
  • 原文地址:https://www.cnblogs.com/dbaxyx/p/8867854.html
Copyright © 2020-2023  润新知