Dubbo客户端调用报错NullPointerException

1. 背景

    使用@Reference注解实现消费者调用服务端代码,调用报错NullPointerException,如图:

Dubbo客户端调用报错NullPointerException_第1张图片

    注意:如果你的服务端没有注册到dubbo,客户端在调用时也会出现NullPointerException报错,所以可以先到dubbo-admin去看下服务端是否已经正常注册。

    dubo-admin安装方式可参照:

    https://blog.csdn.net/u011294519/article/details/81712601

2. 服务端代码

    因为只是写一个小demo,代码逻辑十分简单

2.1. 服务端接口

Dubbo客户端调用报错NullPointerException_第2张图片

 

2.2. 服务端接口实现类

Dubbo客户端调用报错NullPointerException_第3张图片

       注意:这里的@Service注解需要使用com.alibaba.dubbo.config.annotation.Service。

2.3. 服务端dubbo配置文件

Dubbo客户端调用报错NullPointerException_第4张图片

3. 客户端代码

3.1.接口

Dubbo客户端调用报错NullPointerException_第5张图片

 

3.2. 测试接口

Dubbo客户端调用报错NullPointerException_第6张图片

 

3.3. 配置文件

Dubbo客户端调用报错NullPointerException_第7张图片

4. Dubbo-admin结果

Dubbo客户端调用报错NullPointerException_第8张图片

    到这里为止看上去都很正常,但是只要客户端调用服务端方法就报NullPointerException。

Dubbo客户端调用报错NullPointerException_第9张图片

5. 解决方法

    网上找了很多方法,但是都不能解决问题,后来想到有没有可能是SpringMVC的包扫描影响了dubbo的注解扫描,然后尝试着将dubbo的包扫描配置单独抽出来,放在SpringMVC配置的最上面,果然问题解决。如图:

Dubbo客户端调用报错NullPointerException_第10张图片

    然后把dubbo配置中的这个去掉,问题解决。

你可能感兴趣的:(dubbo学习,dubbo客户端调用报错,dubbo,异常)