91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SpringBoot如何使用axis調用webservice接口

發布時間:2022-06-17 09:49:43 來源:億速云 閱讀:2017 作者:zzz 欄目:開發技術

本篇內容介紹了“SpringBoot如何使用axis調用webservice接口”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

WebService

定義

SpringBoot如何使用axis調用webservice接口

個人理解

通過度娘等方式,個人理解為變相的soap協議加xml工單處理,

實踐

webservice 常識

一個webservice 接口發布地址往往類似:

  • qq 在線驗證接口:

www.webxml.com.cn/webservices…

  • 其他可測試接口:

email電子郵箱地址接口: www.webxml.com.cn/WebServices…

全國天氣情況接口:

www.webxml.com.cn/WebServices…

qq在線接口驗證接口為例

在接口后面加:/wsdl www.webxml.com.cn/webservices…

訪問查看然后找到下圖中定義的內容:注意使用關聯key找到對應的必要使用的參數。

SpringBoot如何使用axis調用webservice接口

maven 使用 axis

應用依賴(不可缺失必須)

        <!-- https://mvnrepository.com/artifact/org.apache.axis/axis -->
        <dependency>
            <groupId>org.apache.axis</groupId>
            <artifactId>axis</artifactId>
            <version>1.4</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/wsdl4j/wsdl4j -->
        <dependency>
            <groupId>wsdl4j</groupId>
            <artifactId>wsdl4j</artifactId>
            <version>1.6.2</version>
        </dependency>
<!--        解決cell 轉換問題-->
        <!-- https://mvnrepository.com/artifact/javax.xml/jaxrpc-api -->
        <dependency>
            <groupId>javax.xml</groupId>
            <artifactId>jaxrpc-api</artifactId>
            <version>1.1</version>
        </dependency>
<!--       解析調用結果以及數據轉換包-->
        <!-- https://mvnrepository.com/artifact/commons-discovery/commons-discovery -->
        <dependency>
            <groupId>commons-discovery</groupId>
            <artifactId>commons-discovery</artifactId>
            <version>0.2</version>
        </dependency>

代碼(粘貼可用)

@Test
public void testWebService() {
    try {
        //wsdl地址
        String endpoint = "http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx";
        //命名空間
        String namespace = "http://WebXml.com.cn/";
        //服務名
        String serviceName = "qqOnlineWebService";
        //方法名
        String methodName = "qqCheckOnline";
        //soapAction
        String soapAction = "http://WebXml.com.cn/qqCheckOnline";

        Service service = new Service();
        Call call = (Call) service.createCall();
        //設置響應超時
        call.setTimeout(3000);
        //設置地址
        call.setTargetEndpointAddress(new java.net.URL(endpoint));
        //設置方法名
        call.setOperationName(new QName(namespace, methodName));

        //設置參數
        call.addParameter(new QName(namespace, "qqCode")
                , org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN);
        //設置返回類型
        call.setReturnType(XMLType.XSD_SCHEMA);
        //啟用soap
        call.setUseSOAPAction(true);
        //設置soapAction
        call.setSOAPActionURI(soapAction);
        //設置服務名
        SOAPService soapService = new SOAPService();
        soapService.setName(serviceName);
        call.setSOAPService(soapService);
        Schema result = (Schema) call.invoke(new Object[]{"xxxxx"});
        for (int i = 0; i < result.get_any().length; i++) {
            System.out.println(result.get_any()[i]);
        }
    } catch (Exception e) {
        log.error("ddd", e);
    }
}

對于以上代碼,我這邊吐槽一下,網上其實很多這個的例子但是實際調用的時候會出問題,注意點:

  • 設置參數

SpringBoot如何使用axis調用webservice接口

  • 獲取結果

SpringBoot如何使用axis調用webservice接口

xxxx需要填寫真實的QQ號碼

“SpringBoot如何使用axis調用webservice接口”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

奉节县| 温州市| 观塘区| 霍城县| 安义县| 新丰县| 彭阳县| 潼关县| 雷山县| 大田县| 平顺县| 高碑店市| 买车| 永嘉县| 南华县| 九江市| 榕江县| 襄垣县| 葫芦岛市| 定日县| 朝阳区| 上犹县| 鹤壁市| 嘉黎县| 水富县| 德江县| 眉山市| 泸水县| 理塘县| 平邑县| 正阳县| 厦门市| 阳原县| 宁陕县| 防城港市| 县级市| 永川市| 泰和县| 城步| 枣庄市| 平利县|