java程式碼呼叫webservice介面
阿新 • • 發佈:2019-01-04
1.下面直接上程式碼,一個工具類,呼叫webservice介面
package client;
/**
* @author yangeES
*/
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
public class AxisUtils {
public static String callService(String serviceUrl,String methodName,Object [] args) {
// 建立一個服務(service)呼叫(call)
String ret="";
try {
Service service = new Service();
// 通過service建立call物件
Call call = (Call) service.createCall();
// 設定service所在URL
call.setTargetEndpointAddress(
new java.net.URL(serviceUrl));
call.setOperationName(methodName);//設定訪問的方法名
ret = (String) call.invoke(args);// Object 陣列封裝了傳遞的引數
} catch (Exception e) {
e.printStackTrace();
}
return ret;
}
public static String startWebService(String cs) {
String res = "";
try {
res=callService("http://127.0.0.1:8080/axis/servers/hello?wsdl" ,"dockInfoInsert",new Object[]{cs});
} catch (Exception e) {
e.printStackTrace();
}
return res;
}
}
a.這個裡面的訪問地址,方法名,對應的是我上篇部落格的webservice引數,我簡單介紹下,前面是webservice介面所部署的伺服器網路Ip,servers路徑,hello服務名,dockinfoInsert你要呼叫的介面的方法名,new Object[]{cs}放你傳遞的引數。
b.這個一般是介面的提供方會給出介面介紹文件,然後你根據文件就可以找到對應的路徑,方法名。
2.這個工具類寫好後,只要呼叫工具類中的startWebService()就可以了,具體傳遞引數的設定就看實際要求了。