java 調用webservcie ,本身親測可用

 第一次用 java 調webervice,網上看了不少博客,能用的沒幾個,綜合幾個博客,終於成功調用了。java

 

 

package com.casco.action;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import javax.xml.namespace.QName; web

 

public class syncProjectData {

public void syncProject(String projectNo)
{

}

public static void main(String[] args) {
try {
String endpoint = "XXXX?wsdl";
// 直接引用遠程的wsdl文件
// 如下都是套路
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(endpoint);
call.setOperationName(new QName("http://tempuri.org/","GetProjectByCondition")); // WSDL裏面描述的接口名稱
call.addParameter(new QName("http://tempuri.org/","condition"),
org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN);// 接口的參數
call.setUseSOAPAction(true);
call.setReturnType(org.apache.axis.encoding.XMLType.SOAP_STRING); //返回參數的類型
call.setSOAPActionURI("http://tempuri.org/GetProjectByCondition"); //這個也要注意 就是要加上要調用的方法GetProjectByCondition,否則也會報錯
String temp = "A0117032"; //參數的值
String result = (String) call.invoke(new Object[] { temp });
// 給方法傳遞參數,而且調用方法
System.out.println("result is " + result);
} catch (Exception e) {
System.err.println(e.toString());
}

}
}apache

相關文章
相關標籤/搜索