soapui和cxf的卻別_根據wsdl文件用soapUi快速構建webService服務(有圖有真相)

最近公司業務上使用webservice 頻繁。由于之前都是自己建立webservice 自己定義提供幫對方服務,現在則相反需求都是根據人家提供的wsdl 文件來生成 我們系統必須提供的接口。剛起初不知道如何生成soapui調用wsdl需要安全驗證,為了一個webservice 服務,而建立多種環境如: xfire,jaxws,axis,cxf , 幾種都搭建出來,一種一種比較生成wsdl 的格式,最好確認了格式,又得確定方式,對象,服務名,一系列下來的花上 1-2天時間。

言歸正傳,首先普及一下,webservice 規范,無論他們所使用的語言、 平臺或外部協議是何種, 都可以互相交換數據。

換句話說,人家提供的wsdl ,我們生成的基本條件為 調用的服務名,端口,方法名得跟 提供的wsdl 一致,這樣就能通訊. 所以不必糾結使用哪個框架 生成,選我們很熟悉的webservice ,這里我使用的是apache-cxf-2.7.11

生成 根據人家提供的wsdl 一樣的接口與服務 , 測試服務接口硬件soapui-4.5.2 , apache-cxf-2.7.11

1. 在官方下載apache-cxf-2.7.11 完成后,配置環境變量(和java 配置環境變量一樣)

新建環境變量CXF_HOME = 你的路徑/apache-cxf-2.7.11

2. 在Path 后面添加 %CXF_HOME%/bin ,保存退出

3. cmd 一下 看能否有此界面,如果有則順利了

4. 啟動soapui-4.5.2\bin\soapui.bat , 新建 New soapUI project

5. 點ok 后,生成如下圖soapui調用wsdl需要安全驗證,然后選中項目選取apache cxf

6. 點擊tools,選中cxf 路徑,ok后,在后面礦 選擇輸出文件模式,填寫包路徑,勾選 生成 generates client ,generates server, generates implement, 點擊generates

7. 這就完成了。其實soapUI 也并非用apache-cxf 命令生成。也可以用apache-cxf bin 下生成目錄.

8. 引入jar 包 ,我這兒使用的是 maven

org.apache.cxf

cxf-api

2.7.11

org.apache.cxf

cxf-rt-frontend-jaxws

2.7.11

org.apache.cxf

cxf-rt-bindings-soap

2.7.11

org.apache.cxf

cxf-rt-transports-http

2.7.11

org.apache.cxf

cxf-rt-ws-security

2.7.11

9. 復制至工程后。 新建文件名applicationContext-cxf.xml ,

http://www.springframework.org/schema/beans?http://www.springframework.org/schema/beans/spring-beans-3.0.xsd

http://www.springframework.org/schema/context?http://www.springframework.org/schema/context/spring-context-3.0.xsd

http://cxf.apache.org/jaxws?http://cxf.apache.org/schemas/jaxws.xsd">

10. 與spring 的applicationContext.xml 文件一個目錄, 再在applicationContext.xml 里面引用

http://www.springframework.org/schema/beans?http://www.springframework.org/schema/beans/spring-beans-3.0.xsd

http://www.springframework.org/schema/context?http://www.springframework.org/schema/context/spring-context-3.0.xsd

http://www.springframework.org/schema/aop?http://www.springframework.org/schema/aop/spring-aop-3.0.xsd

http://www.springframework.org/schema/tx?http://www.springframework.org/schema/tx/spring-tx-3.0.xsd

">

11. 在項目里配置 web.xml

CXFServlet

org.apache.cxf.transport.servlet.CXFServlet

CXFServlet

/services/*

完成前面步驟之前首先你的ssh 工程得走的上去。最少得有spring 支持。我使用的是 spring mvc + mybatis

按上面來不會有出錯. 在瀏覽器輸入:8080/tsmweb/services/sptsmstubws?wsdl

路徑名稱 servlet url pattern +applicationContext-cxf.xml address

顯示如下。成功

引用:

本文來自電腦雜談,轉載請注明本文網址:

http://www.pc-fly.com/a/tongxinshuyu/article-140906-1.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/538638.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/538638.shtml
英文地址,請注明出處:http://en.pswp.cn/news/538638.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

linux軟件安裝管理

Linux軟件安裝管理 TonyLinux系統工程師難度初級 時長 3小時 6分 學習人數64016 綜合評分9.8收藏上面是linux 的源代碼安裝包 linux有兩種類型的軟件安裝方式: 1、源代碼安裝 這種方式的軟件安裝,可以指定軟件的安裝目錄,軟件的運行效率高&am…

ts語音自建服務器,自建TeamSpeak語音服務器,免費提供給專注游戲的玩家使用!...

先提一句,帶過節奏的云玩家 可以滾了!???以下內容更新于2020/5/22 15:30:?根據 洛杉磯湖人名宿孫悅 ?的提醒,不推薦下載ts1.cn的盜版客戶端,也不推薦俱樂部或者各位玩家租用ts1.cn的盜版服務器。具體可查看帖子 h…

hbase多master和動態添加節點

1、多個master節點。 在reginserver節點上使用命令: hbase-daemon.sh start master 在nbdo3機器上啟動主備后,查看nbdo3機器上master產生的日志: 2017-04-08 09:37:52,471 INFO [nbdo3:16000.activeMasterManager] master.ActiveMasterMa…

電子電器架構刷寫方案——General Flash Bootloader

電子電器架構刷寫方案——General Flash Bootloader 我是穿拖鞋的漢子,魔都中堅持長期主義的汽車電子工程師。 注:文章1萬字左右,深度思考者入!!! 老規矩,分享一段喜歡的文字,避免…

python心理學實驗程序_心理學實驗程序編程(python)

任務一:實現簡單的屏幕的顏色之間的切換 importpygamefrom pygame.locals import *pygame.init() win pygame.display.set_mode((800,600),DOUBLEBUF|HWSURFACE)for i in range(10): win.fill((0,255,0))if i%20: win.fill((255,0,0)) pygame.time.wait(500) pygame…

Java并發-ThreadLocal

原文地址:cmsblogs.com/?p2442 ThreadLocal介紹 ThreadLocal提供了一種解決多線程環境下成員變量的問題,但是它并不是解決多線程共享變量的問題。那么ThreadLocal到底是什么呢? API是這樣介紹的:This class provides thread-loca…

vue 監聽map數組變化_解決vue無法偵聽數組及對象屬性的變化問題

一、數組1、可以監聽到的情況如push、splice、賦值(array[1,2,3])2、無法監聽到的情況使用下標修改某個元素(這種比較常見)array[index] 1object.a 3直接修改數組lengtharray.length 53、解決方案this.$set(array, index, data) - 這是個深度的修改,某些情況下可…

哈維瑪德學院 計算機,這些美國大學名氣不高,卻有最頂級的工程專業

上一期我們盤點了有博士學位的Top50 大學工程專業排名今天我們繼續盤點 2018USNEWS 工程專業排名不過這個排名主要針對的是沒有博士學位的 Top50 大學和上一期那些大名鼎鼎的大學相比這里面很多大學并不怎么為人熟知因為這個榜單大部分都是區域性大學事實上,工程專業…

Hbase介紹

1、為什么出現hbase?hadoop 的NameNode適合大文件,不適合小文件。HDFS不適合大量小文件的存儲,因namenode將文件系統的元數據存放在內存中,因此存儲的文件數目受限于 namenode的內存大小。HDFS中每個文件、目錄、數據塊占用150Byt…

math 向上取整_自我說明:關于Math和File類的具體說明.

Math類:Math類,不允許有子類,它直接繼承于object.Math類包含執行基本數字運算的方法.如基本指數,對數,平方根和三角函數.Math的基本方法:System.out.pintln(“1.絕對值:”Math.abs(16)”t”Math.abs(-16)”…

眼圖 非差分線_LVDS低電壓差分信號簡介

LVDS低電壓差分信號簡介1. 名詞解釋1.1. 背景隨著數據傳輸速率越來越高,現在計算機系統中的數據傳輸接口基本上都串行化了,像USB、PCIe、SATA、DP等等外部總線將并行總線擠壓到只剩下內存總線這個最后的堡壘。當然,就算是并行傳輸總線最后的倔…

無內存在優盤可以啟動計算機嗎,沒有U盤不要緊,內存卡做啟動盤裝Win7方法

現在最流行的win7系統安裝方法大多以U盤來安裝,那么如果你沒有U盤呢?為了安裝個Win7系統是不是要去買個U盤?當然不用,如果你還有空閑不用的手機內存卡,那么也是可以制作U盤啟動盤來安裝Win7系統的。準備工具&#xff1…

微信小程序request請求動態獲取數據

微信小程序開發文檔鏈接 1 后臺代碼: clickButton:function(){var that this;wx.request({url: http://localhost:9096/admin.php/index/jj,method : POST,header: { content-type: application/x-www-form-urlencoded },data : {},success: function (res) {//console.log(re…

HBase中的HMaster、HRegionServer、Zookeeper

原文鏈接:http://blog.csdn.net/mm_bit/article/details/51304233 ----------------------------------- HMaster是Hbase主/從集群架構中的中央節點。通常一個HBase集群存在多個HMaster節點,其中一個為Active Master,其余為Backup Master. Hbase每時每刻只有一個hm…

spyder python調試_使用spyder編譯器單步調試python

1、將需要進行單步調試的函數在腳本中進行調用(十分重要的一步)。由于python是解釋型語言,在進行單步調試的時候需要告訴系統你使用了這個函數,單步調試才會進入你所需要調式的函數。如下圖所示,我們定義了createDataS…

label qt 自動換行_QT編寫一個登錄界面

前言繼上篇:一起學Qt之基礎篇---入門今天上手實操用QT編寫一個登錄界面~系統權限這個詞大家肯定不陌生,你進入一個網站也是,如果不登錄,就是以游客的身份進去的,要想看到某些信息肯定需要進行登錄,更完善的…

我的世界服務器怎么修改書與筆,我的世界書與筆怎么做 我的世界書與筆怎么用...

第一步先收集甘蔗,然后合成紙,甘蔗在河邊,池塘邊,沼澤地一般都會生成,我們也可以拿回家種植,但是甘蔗必須種在水邊,其他地方種植不了,其他地方玩家怎么右鍵甘蔗都是沒有反應的。第二…

python csv模塊用法_python使用csv模塊如何將數據存放在一張表的不同行?

def save2csv(file_nameNone, headerNone, dataNone): """ 保存成CSV格式文件,方便Excel直接打開 :param file_name: 保存的文件名 :param header: 表頭,每一列的名字 :param data: 具體填充數據 :return: """ if file_name is None or isinstan…

虛擬機 服務器 root,虛擬機切換到root賬戶

虛擬機切換到root賬戶 內容精選換一換一、安裝虛擬機1、下載VMware workstation 14 ,安裝時按照默認配置安裝2、下載ubuntu-18.04.1-desktop-amd64.iso鏡像文件3、打開 VMware workstation ,新建虛擬機4、配置虛擬機內存,磁盤,網絡…

每一行末尾添加分號

文本內容如下: TMP_TBX_100_0_A1 TMP_TBX_100_0_A10 TMP_TBX_100_0_A12 TMP_TBX_100_0_A13 TMP_TBX_100_0_A14 TMP_TBX_100_0_A15 TMP_TBX_100_0_A15_2 TMP_TBX_100_0_A16 TMP_TBX_100_0_A17 TMP_TBX_100_0_A18 TMP_TBX_100_0_A19 TMP_TBX_100_0_A19_2 TMP_TBX_100…