關於dubbo創建服務和引用服務時,會報錯:cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 問題的解決


  在跟着做淘淘商城項目時,用到了dubbo,作為一個SOA架構的項目,分為表現層與服務層,自然地,為了各個層之間解耦合(或者最大限度地松耦合),我們使用了dubbo這樣一個alibaba開源的分布式服務框架,該框架最大的特點就是利用分層的方式來架構,從服務模型的角度來看,Dubbo采用的是一種非常簡單的模型,要么是提供方提供服務,要么是消費方消費服務,所以基於這一點可以抽象出服務提供方(Provider)和服務消費方(Consumer)兩個角色。

  但是在appplicationContext-service.xml創建服務和在springmvc.xml中引用服務時,我們設置了dubbo約束,但是仍然會報錯,系統提示我們找不到dubbo:application、dubbo:registry、dubbo:protocol、dubbo:reference等元素

  具體錯誤如下:

Multiple annotations found at this line:
    - cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'dubbo:application'.
    - schema_reference.4: Failed to read schema document 'http://code.alibabatech.com/schema/dubbo/dubbo.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root 
     element of the document is not <xsd:schema>.

  錯誤如下圖所示:

  

  

  為什么呢?因為阿里的開源網站http://code.alibabatech.com,早已經掛掉了!!!

  這就說明系統沒有找到dubbo.xsd,於是我手動添加dubbo.xsd約束文件。在下載的dubbo-2.5.3.jar包中存在一個文件dubbo.xsd,將此文件取出存放於電腦的磁盤的某一目錄,配置加載的時候先加載本地的。如下配置即可解決。

   

  

  在Eclipse中 Window --> Preferences

   

  

  保存完成后,右鍵相應的報紅的配置文件,選擇validate。稍等片刻即可解決。

  

參考鏈接:

  https://www.cnblogs.com/yuanchaoyong/p/9758053.html

  https://blog.csdn.net/wxydaisy/article/details/40650405

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM