1怪与、WebService的實現(xiàn)方式
Webservice是一個平臺獨立的师溅,低耦合的谢翎,自包含的、基于可編程的web的應用程序走趋,可使用開放的XML(標準通用標記語言下的一個子集)標準來描述衅金、發(fā)布、發(fā)現(xiàn)簿煌、協(xié)調(diào)和配置這些應用程序氮唯,用于開發(fā)分布式的互操作的應用程序。 據(jù)我所知WebService最常見的實現(xiàn)方式有主要AXIS姨伟、CXF及XFire比較多惩琉,這里是我用AXIS直接實現(xiàn)不使用wsdl的實例
2、實例
先導入需要的jar包
鏈接: https://pan.baidu.com/s/1H1iB_qUP9NPKXwbK_AfEWA 提取碼: x7yj
將axis.jar夺荒、commons-discovery-0.2.jar瞒渠、commons-logging-1.0.4.jar、jaxrpc.jar技扼、wsdl4j-1.5.1.jar導入java項目中
接下來就十分簡單了
package com.lss.service;
import lombok.extern.slf4j.Slf4j;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import javax.xml.rpc.ParameterMode;
import javax.xml.rpc.encoding.XMLType;
import java.net.URL;
@Slf4j
public class WebService {
public void requestService(){
try {
Service service = new Service();
Call call = (Call)service.createCall();
String endpoint = "http://203.23.12.1:8010/webService"; // 命名空間
call.setTargetEndpointAddress(new URL(""));
call.setOperationName("request"); // 需要請求的方法
call.addParameter("param1", XMLType.SOAP_STRING, ParameterMode.IN); // 入?yún)? call.addParameter("param2", XMLType.SOAP_STRING, ParameterMode.IN); // 入?yún)? call.addParameter("param3", XMLType.SOAP_STRING, ParameterMode.IN); // 入?yún)? String param1 = ""; // 參數(shù)
String param2 = ""; // 參數(shù)
String param3 = ""; // 參數(shù)
call.setReturnType(XMLType.SOAP_STRING); // 設置返回值
String result = "";
result = (String) call.invoke(new Object[] {param1, param2, param3}); // 調(diào)用獲取返回值
log.info("請求結(jié)果:{}", result);
}catch (Exception e){
e.printStackTrace();
}
}
}
按上述請求獲取返回值即可