SpringBoot整合cxf實現SOAP WebService


SpringBoot的Web Service類型常見有RESTful Web Service和SOAP Web Service兩種,RESTful風格的web服務比較常用,但實際工作中仍有部分場景用到SOAP Web Service。SpringBoot實現SOAP Web Service的方式有多種,個人覺得cxf比較簡單,下面采用cxf來實現。

1.添加maven依賴

 

2.根據實際應用場景開發Web Service

接口類:

 

 實現類:

 這里以最簡便的方式實現業務邏輯,關鍵是注解的使用,此外還可以通過@SOAPBinding、@WebResult等注解以及上述注解的一些屬性對服務進行配置,這里不再贅述。

 

3.添加配置發布Web Service

      SpringBoot框架最大的優點之一就是簡化配置,習慣優先於配置,因此大部分配置都有默認值,不需要我們去配置。當需要個性化配置時,通常用java類的配置方式來代替繁瑣的xml配置,簡潔直觀,不易出錯;即使出現錯誤,也能借助IDE在編譯時期發現和精確定位,而xml配置卻是在運行時才能發現,而且不好定位。

可以同時發布多個服務, 每個服務配置一個Endpoint Bean,這里只配置一個服務。

 

4.運行springboot項目

看到上面項目啟動的日志信息,證明服務發布成功,注意soap webservice默認在發布路徑加上/services,可以在配置類中增加如下代碼改變該路徑

@Bean

public ServletRegistrationBean dispatcherServlet() {

        /* “/soap/*”為自己配置的soap webservice發布路徑前綴 */

   return new ServletRegistrationBean(new CXFServlet(), "/soap/*"); 

}

 下面用soapUI工具調用服務接口

至此,soap Web Service服務已成功發布。


免責聲明!

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



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