導航:首頁 > 程序命令 > wsdl2java命令

wsdl2java命令

發布時間:2023-03-12 00:10:43

❶ cxf wsdl2java命令生成客戶端java類,怎麼設置超時時間

可能是wsdl2java命令沒有生成超時的代碼,具體需要研究下生成代碼的wsdl2java的工作原理,我一般都是手動設置超時時間
Service service = new Service();
Call call = (Call) service.createCall();
call.setTimeout(1000*60*15); //設置超時時間 15分鍾

❷ axis2的wsdl2java命令可以生成wsdl的服務端和客服端代碼,請問各位大牛這個客服端和服務端的有什麼區別。

生成的服務端是你本機作為服務的提供者;生成客戶端是為了你去調用服務端提供的服務。
如果你想調用服務的話,當然是用生成的客戶端代碼了。

❸ java webservice怎麼生成wsdl文件

在大多數情況下我們都需要為我們的服務提供一個WSDL文件,而 Axis2's Java2WSDL 是專門用來生成WSDL文件的D專用工具,如果你要在命令行模式下進行生成WSDL文件,首先需要保證你的環境變數AXIS2_HOME是否已經配置OK,同時還要保證把%AXIS2_HOME%in加入到你的path環境中,要生成 WSDL文件,首先要保證你的class能夠編譯成功,而且已經編譯成功,然後進入class文件編譯後的根目錄(在JBuilder中是classes,在Eclipse中是bin目錄)這時,生成WSDL文件的准備工作已經OK。x0dx0ax0dx0a下面是生成WSDL文件時的可選參數和參數說明:x0dx0a---------------------------------------------------------------------------------x0dx0aUsage java2wsdl -cn : class file namex0dx0a-o : output file locationx0dx0ax0dx0a-cp : list of classpath entries - (urls)x0dx0ax0dx0a-tn : target namespacex0dx0ax0dx0a-tp : target namespace prefixx0dx0ax0dx0a-stn : target namespace for schemax0dx0ax0dx0a-stp : target namespace prefix for schemax0dx0ax0dx0a-sn : service namex0dx0ax0dx0a-of : output file name for the WSDLx0dx0ax0dx0a-st : style for the WSDLx0dx0ax0dx0a-u : use for the WSDLx0dx0ax0dx0a-l : address of the port for the WSDLx0dx0ax0dx0a-nsg : fully qualified name of the class that implements -p2n [,,] ...x0dx0ax0dx0a-efd : Setting for elementFormDefault (defaults to qualified)x0dx0ax0dx0a-afd : Setting for attributeFormDefault (defaults to qualified)x0dx0ax0dx0a-xc : Extra class for which schematype must be generated.x0dx0aUse as : -xc class1 -xc class2 ...典型地,進入你的工程的二進制編譯根目錄,執行命令模板如下:x0dx0ajava2wsdl -cp . -cn [PACKAGENAME].[CLASSNAME]-of [FILENAME].wsdlx0dx0ax0dx0a現在我們假設在samples.helloworld.service.axiom;包下面有個HelloWorldService類,工程的類文件編譯後存放在buildclasses目錄下,那麼,首先進入該目錄中,然後執行以下命令:x0dx0ajava2wsdl -cp . -cn samples.helloworld.service.axiom.HelloWorldService -of HelloWorldService.wsdlx0dx0ax0dx0a執行後的CMD提示如下說明已經成功執行了:x0dx0ax0dx0aUsing AXIS2_HOME: D:axis2-1.1.1x0dx0aUsing JAVA_HOME: C:Program FilesJavajdk1.5.0_06

❹ 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代碼

❺ Java調用wsdl,怎麼實現

java調用wsdl的步驟如下,主要是使用第三方框架:

步驟如下:

1.下載AXIS2類庫,AXIS2是目前java調用webservice的一個主要方法(由於更新較頻繁,請自行google該類庫的網址)

2.由於是第三方webservice,直接引入AXIS2的包就可以用了,代碼如下:

importjava.rmi.RemoteException;
importjavax.xml.rpc.ParameterMode;
importjavax.xml.rpc.ServiceException;
importorg.apache.axis.client.Call;
importorg.apache.axis.client.Service;
importorg.apache.axis.encoding.XMLType;

publicclasswebServiceTest{
publicStringinvokeRemoteFuc(){
Stringendpoint="http://localhost:8080/webservice/services/helloworld";
Stringresult="noresult!";
Serviceservice=newService();
Callcall;
Object[]object=newObject[1];
object[0]="DearImissyou";//Object是用來存儲方法的參數
try{
call=(Call)service.createCall();
call.setTargetEndpointAddress(endpoint);//遠程調用路徑
call.setOperationName("say");//調用的方法名

//設置參數名:
call.addParameter("str1",//參數名
XMLType.XSD_STRING,//參數類型:String
ParameterMode.IN);//參數模式:'IN'or'OUT'

//設置返回值類型:
call.setReturnType(XMLType.XSD_STRING);//返回值類型:String

result=(String)call.invoke(object);//遠程調用
}catch(ServiceExceptione){
e.printStackTrace();
}catch(RemoteExceptione){
e.printStackTrace();
}
returnresult;
}

publicstaticvoidmain(String[]args){
webServiceTestt=newwebServiceTest();
Stringresult=t.invokeRemoteFuc();
System.out.println(result);
}
}

該方法的原理很簡單,通過AXIS2封裝好的類設置URL和參數,直接調用就好了,我們要關注的就是設置URL,方法,還有方法的參數,其他的&paste好啦,很簡單吧,再看看其他的方法,我勒個去了,害我瞎搞兩天。遲點上個源碼共大家參考!

❻ 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的路徑。

閱讀全文

與wsdl2java命令相關的資料

熱點內容
四川廣電怎麼安裝app 瀏覽:4
大話西遊伺服器是什麼意思 瀏覽:775
誇克解壓壓縮文件 瀏覽:915
怎麼買賣副圖源碼 瀏覽:660
廣東農信app怎麼更改預留手機號碼 瀏覽:777
嵌套頁面php 瀏覽:566
安卓手機怎麼調到微信聊天模式 瀏覽:857
java博客開源系統 瀏覽:719
男人之間的加密對話日語 瀏覽:359
怎麼連遠程連接伺服器 瀏覽:11
安卓二手手機該如何檢測 瀏覽:213
微信可以共享圖片文件夾嗎 瀏覽:80
聯通wifi加密碼 瀏覽:643
錄屏文件夾小米 瀏覽:548
車上的app怎麼重設 瀏覽:24
指定文件夾屬性 瀏覽:131
linuxphp編程 瀏覽:337
以下不正確的是雲伺服器 瀏覽:909
琉璃神社壓縮密碼 瀏覽:715
大一學生解壓視頻 瀏覽:376