呼叫Webservice介面
阿新 • • 發佈:2020-12-04
webservice介面採用的協議是soap協議,和我們常用的http協議不同。故不能用呼叫http的形式呼叫webservice介面
soap協議:是一種輕量的、簡單的、基於XML(標準通用標記語言下的一個子集)的協議
http協議:http是標準超文字傳輸協議
如何呼叫webservice介面(我比較常用的),當然,這只是其中之一。其他的自行百度吧
需要兩個jar包:
api("org.apache.cxf:cxf-rt-frontend-jaxws:3.4.1") api('org.apache.cxf:cxf-rt-transports-http:3.4.1')
然後需要一個呼叫的客戶端,如下:
/** * @author xiaoxin */ @Slf4j public class WebServiceUtils { /** * @param url 請求路徑 * @param message 報文 * @param method 需要呼叫的方法名字 * @return */ public static String sendWsdl(String url, String message, String method) { //建立JaxWsDynamicClientFactory作為呼叫客戶端; JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance(); try { //客戶端呼叫wsdl地址 Client client = dcf.createClient(url); Object[] objects = client.invoke(method, new Object[]{message}); return String.valueOf(objects[0]); } catch (Exception e) { log.error("呼叫webservice介面Exception{}", e); BusinessException.throwBusinessException(e.getMessage()); } return null; } }