1. 程式人生 > >springMVC dubbo消費者 @Reference註解無效,service層返回空指針

springMVC dubbo消費者 @Reference註解無效,service層返回空指針

springMVC dubbo消費者 @

由於將來的項目將使用spring boot技術為主題,這幾天嘗試了一下springboot+dubbo來完成業務架構的分層,這篇文章主要記錄springboot搭建過程中遇到的dubbo空指針問題。

首先建議遇到此問題的通道,看一下這篇文章

http://www.oschina.net/question/1011127_144093?fromerr=7pRd3NKv

這篇文章雖然沒有解決掉springboot的配置問題,但是為解決這個問題提供了思路,springboot+dubbo的空指針問題,主要原因:spring 掃描的時候根本無法識別@Reference ,同一方面,dubbo的掃描也無法識別Spring

@Controller ,所以兩個掃描的順序要排列好,如果先掃了controller,這時候把控制器都實例化好了,再掃dubbo的服務,就會出現空指針。

下面提供一下代碼:

dubbo-provider.xml:提供者先掃描spring框架,完成spring部分的掃描,然後將為dubbo框架提供服務;消費者部分相反,先掃描dubbo服務,後掃描spring部分~

<mvc:annotation-driven />  
  
<!-- 消費方應用名,用於計算依賴關系,不是匹配條件,不要與提供方一樣 -->    
<dubbo:application name="dubbo-consumer" owner="programmer" organization="dubbox" />     
  
<dubbo:registry address="zookeeper://127.0.0.1:2181"/>  
  
<dubbo:consumer timeout="30000" />  
  
<!-- <dubbo:reference id="demoService" interface="com.dubbo.service.DemoService"/> -->  
<dubbo:annotation package="com.dubbo.controller" />  
  
<!-- 把標記了@Controller註解的類轉換為bean -->  
<context:component-scan base-package="com.dubbo.controller" />

產考:https://blog.csdn.net/zhou_java_hui/article/details/53039491

springMVC dubbo消費者 @Reference註解無效,service層返回空指針