码迷,mamicode.com
首页 > 编程语言 > 详细

spring-cloud-feign [email protected] parameter must be a Map: class java.lang.String

时间:2016-11-21 07:59:58      阅读:1065      评论:0      收藏:0      [点我收藏+]

标签:process   ati   cti   ted   amp   .net   null   argument   报错   

这里使用spring-cloud-start-feign: 1.2.2 REALEASE版本,依赖管理器版本是 Camden.SR2

 

[email protected],参数会被当作Map来处理

org.springframework.cloud.netflix.feign.annotation.RequestParamParameterProcessor
代码如下:
    @Override
	public boolean processArgument(AnnotatedParameterContext context,
			Annotation annotation) {
		RequestParam requestParam = ANNOTATION.cast(annotation);
		String name = requestParam.value();
		if (emptyToNull(name) != null) {
			context.setParameterName(name);

			MethodMetadata data = context.getMethodMetadata();
			Collection<String> query = context.setTemplateParameter(name,
					data.template().queries().get(name));
			data.template().query(name, query);
		} else {
			// supports `Map` types
			MethodMetadata data = context.getMethodMetadata();
			data.queryMapIndex(context.getParameterIndex());
		}
		return true;
	}    

  

[email protected] mvc的不一样,Spring [email protected]字作为value

 

解决方案: [email protected]

spring-cloud-feign [email protected] parameter must be a Map: class java.lang.String

标签:process   ati   cti   ted   amp   .net   null   argument   报错   

(0)
(0)
   
举报
评论 一句话评论(0
0条  
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!