當前位置:首頁 » 編程語言 » wsdl2java

wsdl2java

發布時間: 2023-05-19 20:15:04

1. cxf中命令wsdl2java無法運行!

這個錯誤是報找不到jdk路徑,我之前是path全路徑配置的,也報這個錯誤,新建了一個JAVA_HOME,然後在path引用%JAVA_HOME%就可以找到了

2. eclipse上怎麼使用wsdl2java工具生成webservice客戶端

一、用Eclipse調用Axis的wsdl2java
1.在eclipse裡面新建一個液旦明搏項目或已有的項目;
2.導入

activation.jar
axis.jar
commons-discovery.jar
commons-logging-1.0.3.jar
jaxrpc.jar
saaj.jar
wsdl4j-1.5.2.jar
包鬧槐擾

3右擊你的工程-Run As-Run...-右擊New,新建 new configuration ,將Include libraries when searching for a main class勾上,再點search,輸入wsdl2java,再Arguments里把要生成的web service URI或wsdl文件寫進去,最後點run。
(轉自:http://www.blogjava.net/willpower88/archive/2006/11/22/82887.html)

二、利用myeclipse建立WebServiceClient
1.在Web工程上右鍵-->new-->Other-->MyEclipse下的WebService下的Web Service Client2.在打開窗口上的Project處選擇要放入哪個工程,然後選擇WSDL URL,把WebService地址填上.也可以選擇本地wsdl文件

3. 如何指定wsdl2java的參數

cd 調轉到 wsdl2java 所在目錄

然後輸入 wsdl2java --help
會出現提示信息
eg:
wsdl2java -p com.. -d src --compile -c bin -client yourWsdlURL

-p 指定生攔衫或成的客戶端包名
-d 指定生成的客戶端生成目錄
--compile 指定需要進行編譯

-c 指定編譯生成的目錄
-client 指定生成客戶端調用類, 即包含main方法調用客戶端方法的類簡伍
yourWsdlURL 是需要生成客戶端的wsdl地址

沒記錯的話應該就是這樣塌臘了

4. springmvc框架如何實現像webservice一樣通過wsdl2Java生成客戶端代碼

在用到web service時,如果是調用自己開發的web service還好,可以有一個方法的介面或參數對象實體類什麼的,但如果是調用第三方的服務,除了得到web service服務地址的wsdl文檔外,沒有任何實質性編碼的東西,寫原生調用太麻煩,這時就需要自己寫一個方法的介面類。

這個,目前已經有比較成熟的工具,可以自動生成,下面作一下簡單的介紹。

apache的wsdl2java工具,目前貌似CXF和axis各有一套,使用方式大同小異,但生成的代碼會有所區別,這時說的是CXF提供的wsdl2java工具。

wsdl2java用法:

wsdl2java -p com -d src -all aa.wsdl

-p 指定其wsdl的命名空間,也就是要生成代碼的包名:

-d 指定要產生代碼所在目錄

-client 生成客戶端測試web service的代碼

-server 生成伺服器啟動web service的代碼

-impl 生成web service的實現代碼

-ant 生成build.xml文件

-all 生成所有開始端點代碼:types,service proxy,,service interface, server mainline, client mainline, implementation object, and an Ant build.xml file.

詳細用法見:http://cwiki.apache.org/CXF20DOC/wsdl-to-java.html

一開始使用了CXF的這套工具,發現不是很方便,畢竟依賴CXF提供的工具jar包,個人不是很喜歡用。

後來發現JDK居然也自帶了對web service生成java代碼的功能,貌似1.6版本開始的,試用後發現效果十分不錯,果斷投入它的懷抱。下面作下簡單的介紹,以備忘。

打開jdk下的bin目錄 看下能否找到"wsimport.exe"這個文件

一般情況下都會有

如果沒有則說明你的JDK不支持這個功能

然後在DOS窗口下輸入wsimport 敲回車

如果提示錯誤的話 說明你的JDK環境變數還沒有配好

一句話總結,如果你在dos窗口下輸入wsimport正常,就可以

如果OK的話 輸入以下命令就可以將wsdl文件生成java文件了

wsimporthttp://127.0.0.1/TicketMobile/services/Cococ?wsdl -keep -p com.llg.ws2 -s g:/ws

參數說明

wsimport 這個是必須的 該工具的名稱

http://127.0.0.1/TicketMobile/services/Cococ?wsdl wsdl文件

-keep 是否生成源文件

-p com.llg.ws2 生成後的java包名

-s g:/ws 生成後放哪個目錄

但是前幾天,在對一個第三方提供的web service使用該工具生成java代碼的時候,居然出錯了,網上查找後終於找到原因。

使用cxf wsdl2java或javax wsimport工具的時候,可能會遇到關於生成的Response類文件名沖突的問題

Console代碼

  • WSDLToJavaError:ThrownbyJAXB:Aclass/interfacewiththesamename"***"isalreadyinuse..

  • 目前可選擇的方案:

    apache的wsdl2java工具,使用-autoNameResolution自動處理

    wsdl2java -autoNameResolutionhttp://hello.joy2everyone.com/yourWebService?wsdl

    JDK自帶的工具

    wsimport -p com.test.client -keephttp://hello.joy2everyone.com/yourWebService?wsdl-B-XautoNameResolution

    2.如果web service是己方開發的,可以修改代碼,使用自定義bindings,詳細可看sun webservice文檔

    例如:

    Java代碼

  • @WebMethod

  • @WebResult(name="response")

  • (@WebParam(name="request")ValidateCCRequestrequest);

  • 這個情況下定義的方法名,如果使用工具生成客戶端代碼,很可能存在Response沖突,因為定義的wsdl中會有一個關於介面方法的message

    <wsdl:message name="validateCCResponse">

    </wsdl:message>

    方法名定義的message與介面定義返回的ValidateCCResponse,在工具生成客戶端代碼時就會產生命名沖突。

    但是通過更改介面方法名為:

    Java代碼

  • @WebMethod

  • @WebResult(name="response")

  • (@WebParam(name="request")ValidateCCRequestrequest);

  • 即可解決該沖突,

5. java2wsdl生成的客戶端代碼怎麼調用

首先, 你要先把你的WS服務啟動起來,就是 比如ht tp:/ /localhost:8080/Example/services/HelloWorldService?wsdl
然後在你的另一個項目中建一個Webservice Client 客戶端,用來訪問你的WS服務。
建立Webservice Client 方法如下,在Eclipses中建立一個java工程,然後在src上右鍵--NEW---Other---Web Service Client --Xfire--在WsdL url 中寫上htt p:/ /localhost:8080/Example/services/HelloWorldService?wsdl-----下一步結束。
在src里的會出現一些java文件,你找一個以Client結束的java文件,在裡面的main方法中會有個service對象,現在你就可以直接用這個對象了,service.peerstatus(參數)這樣寫就行了。

6. axis2使用wsdl2java的時候命令行報錯

jdk的環境碰皮變數沒配置。在數胡電腦的屬笑畢差性里配置環境變數。
java_home:jdk的安裝目錄;例如:C:\Program Files\Java\jdk1.7.0_17;
classpath:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;注意前面有個點。
path:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

7. cxf的wsdl2java命令和JDK的wsimport命令的區別和使用

JDK提供了一個wsimport.exe的命令,主要是用於將WebService生成客戶端代碼,然後好調用WebService。
wsimport 是根據JDK1.6.0_21及以上的生成本地代碼的,它只能解析伺服器端的SOAP協議為1.1,不能解析SOAP1.2的協議。如果解析SOAP1.2 將會解析不完全。
用法:前提是已經將JDK配置為了path環境變數 C:\Documents and Settings\Administrator>wsimport -s F:\ -p com.client.jdk.wsimport http://localhost:1111/hello?wsdl
-s 後面指定生成文件的路徑,-p 自定義類包 http://localhost:1111/hello?wsdl 是wsdl的路徑。
CXF也提供了根據WSDL生成客戶端代碼的命令wsdl2java.exe 。它是根據jdk1.7生成的本地代碼,所以,需要對生成的代碼做一點點修改。
它可以支持SOAP1.1 和SOAP1.2的協議。前提是你已經下載了Apache CXF 並且將wsdl2java.exe配置為了path環境變數。
用法:C:\Documents and Settings\Administrator>wsdl2java -d F:\ -p com.client.cxf http://localhost:1111/hello?wsdl
-d 後面指定生成文件的路徑,-p 自定義類包 http://localhost:1111/hello?wsdl 是wsdl的路徑。

8. 如何使用CXF將 wsdl 文件變成java文件

用myeclipse將wsdl文件生成java代碼:
1、選擇新建的工程後,點擊右鍵,選擇「Run As」->「Run」,如下圖所示:

2、彈出如下窗口:

3、 在上圖中,左邊選擇「Java Application」後,點擊左上角的新增「」按鈕new configuration,頁面如下圖所示:

4、在上圖中,將「Include libraries when searching for a main class」 勾上,而後點擊「Main class」右邊的「Search」按鈕,彈出窗口如下圖所示:

5、在上圖中輸入WSDL2Java後,查找到axis這個jar包中對應類,點擊「OK」按鈕,此時主窗口如下圖所示:

6、在上圖中點擊「Arguments」頁簽,Arguments里把要生成的web service URI或wsdl文件寫進去,最後點run。在下圖中輸入的是wsdl文件的路徑: src/wsdl/acd_accessCode_interface.wsdl、src/wsdl/acd_accessCode_service.wsdl:

7、生成的java代碼如下:

熱點內容
ftp搭建win7 發布:2025-05-20 10:06:06 瀏覽:81
訪問堅果 發布:2025-05-20 10:06:02 瀏覽:393
ftpxlight 發布:2025-05-20 10:05:22 瀏覽:110
java的實驗報告 發布:2025-05-20 10:02:06 瀏覽:528
豪華配置高電動轎車有哪些 發布:2025-05-20 10:01:59 瀏覽:487
哪些電腦配置低 發布:2025-05-20 09:34:16 瀏覽:955
地板網站源碼 發布:2025-05-20 09:27:23 瀏覽:346
安卓視頻轉換器怎麼使用 發布:2025-05-20 09:20:52 瀏覽:544
telnet批量腳本 發布:2025-05-20 09:11:58 瀏覽:627
搭建jrebel伺服器 發布:2025-05-20 08:57:40 瀏覽:903