(10)Dubbo2.6.x开发rest风格接口中遇到的坑总结

上一节博客《(9)Dubbo2.6.x开发rest风格的服务接口》中介绍了怎么开发rest服务接口,这个过程当中还是遇到了几个坑的,下面给大家一一介绍一下,希望大家早日脱坑,哈哈!

1:服务消费者调用时报错(消费者实际也是调用成功了):java.lang.RuntimeException: RESTEASY004600: You must use at least one, but no more than one http method annotation on: public abstract java.lang.Long com.wkp.service.rest.UserService.addUser(com.wkp.model.User)

 说明:这是因为rest相关的annotation标签加在了实现类上,将rest相关的注解改到接口上就可以解决了。

2:消费者调用失败,服务提供者报错:org.jboss.resteasy.core.NoMessageBodyWriterFoundFailure: Could not find MessageBodyWriter for response object of type: com.wkp.model.User of media type: application/json;charset=UTF-8

说明:这是因为Dubbo服务提供者缺少rest相关的json解析依赖,导致无法识别请求的json参数,服务提供者添加            resteasy-jackson-provider 依赖即可解决


        
            org.jboss.resteasy
            resteasy-jackson-provider
            3.0.19.Final
        

如果要支持xml请求参数也要添加 resteasy-jaxb-provider 的依赖


        
            org.jboss.resteasy
            resteasy-jaxb-provider
            3.0.19.Final
        

3:服务消费者调用报错(消费者实际也是调用成功了):java.lang.IllegalStateException: Unsupported protocol rest in notified url: rest://169.254.68.252:8080/restApi/com.wkp.service.rest.UserService。。。。。。

说明:这是因为Dubbo消费者没有添加rest相关的依赖,添加如下pom依赖即可



	org.jboss.resteasy
	resteasy-jaxrs
	3.0.19.Final


	org.jboss.resteasy
	resteasy-client
	3.0.19.Final

好了,里面的坑就暂时先介绍到这里,如果有新坑,欢迎留言补充哈!

你可能感兴趣的:(Dubbo,遇到的那些坑)