導航:首頁 > 配伺服器 > axis客戶端如何引用伺服器端的類

axis客戶端如何引用伺服器端的類

發布時間:2024-05-30 04:48:17

java怎麼使用axis調用webservice

方式一:生成客戶端代碼調用方式。
通過插件工具生成客戶端代碼進行調用。例如:存在一服務為 http://127.0.0.1:8000/axis2/services/SMSSendService?wsdl通過插件可以生成SMSSendServiceStub.Java和SMSSendServiceCallbackHandler.java類。調用的客戶端代碼如:

try {

SMSSendServiceStub stub=new SMSSendServiceStub();

SMSSendServiceStub.method1 m1=new SMSSendServiceStub.method1();
m1.setParam1("xxx");

try {
String ret=stub.multiSend(m1).get_return();
System.out.print(ret);
} catch (RemoteException e) {
e.printStackTrace();
}
} catch (AxisFault e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
方式二:使用axis2.rpc.client.RPCServiceClient方式調用。

調用的代碼簡單舉例如下:

import org.apache.axis2.addressing.EndpointReference;

import org.apache.axis2.client.Options;
import org.apache.axis2.rpc.client.RPCServiceClient;
......

try {

final String endpoint = "http://127.0.0.1:8000/axis2/services/SMSSendService";
String opName = "method1";
String param="xxx";
Object[] opArgs = new Object[] { param };
Class<?>[] opReturnType = new Class[] { String[].class };

RPCServiceClient serviceClient = new RPCServiceClient();//此處RPCServiceClient 對象實例建議定義成類中的static變數,否則多次調用會出現連接超時的錯誤。

Options options = serviceClient.getOptions();
EndpointReference targetEPR = new EndpointReference(endpoint);
options.setTo(targetEPR);
QName opQName = new QName("http://service.ws.sms.ipcc.ydtf.com",
opName);
Object[] ret = serviceClient.invokeBlocking(opQName, opArgs,
opReturnType);
System.out.println(((String[]) ret[0])[0]);
} catch (AxisFault e) {
e.printStackTrace();
}

閱讀全文

與axis客戶端如何引用伺服器端的類相關的資料

熱點內容
手機上什麼解壓軟體可以強制解壓 瀏覽:781
win7有自帶編譯器嗎 瀏覽:541
轉接器連了沒有文件夾 瀏覽:570
二手開利螺桿壓縮機 瀏覽:309
有php基礎學java要多久 瀏覽:300
程序員稅後工資多少可以跳槽 瀏覽:172
個別網站無法解析伺服器的dns地址 瀏覽:972
安卓手機如何打開rmb文件 瀏覽:215
新生兒app叫什麼 瀏覽:65
斗魚加密怎麼弄 瀏覽:761
為什麼會加密不可上網 瀏覽:531
步步高手機編譯時間啥意思 瀏覽:396
程序員復盤app 瀏覽:162
pdf確定 瀏覽:538
php連接mysql埠號 瀏覽:1001
id3演算法在進行某個節點劃分時 瀏覽:408
麥塊伺服器如何登錄正版 瀏覽:687
中國民俗學pdf 瀏覽:387
程序員如何做人力資源 瀏覽:658
p單片機數字電壓表項目設計報告 瀏覽:450