WebService呼叫第三方服務(中英文翻譯)
阿新 • • 發佈:2018-11-09
本篇部落格內容是應用webservice知識來獲取第三方服務,這裡以中英文轉換的服務為例。服務釋出地址:http://fy.webxml.com.cn/webservices/EnglishChinese.asmx?wsdl。如果需要其他提供其他服務,可百度搜索webxml。
1.新建EnglishChinese的Java專案,找到其專案所在的路徑,在src的資料夾下,按住shift,右鍵選擇“在此處開啟Powershell”視窗。
2.在命令視窗輸入
wsimport -keep http://fy.webxml.com.cn/webservices/EnglishChinese.asmx?wsdl(這個地址是你需要的第三方服務提供的,看你需要哪個服務,可以百度搜索webxml,裡面收錄了很多第三方服務)
然後回車,等待java虛擬機器編譯,再去eclipse重新整理該專案,發現src目錄有很多服務類。
如果回車編譯不成功,報錯如何解決。
進入此網頁
將此網頁以xml的格式儲存在桌面,在桌面開啟命令視窗,命令視窗輸入
wsimport -keep EnglishChinese.xml然後回車。
出現此錯誤:修改xml檔案,將檔案中所有出現<s:element ref=“s:schema”/><s:any/>的地方全部使用 <s:any minOccurs=“2” maxOccurs=“2”/>替換掉。
然後重新在命令視窗輸入
wsimport -keep EnglishChinese.xml
然後回車
3 然後將編譯好的程式碼資料夾複製到專案的src檔案下,重新整理eclipse的專案,發現src下有目錄了,開始編寫測試程式碼。
從服務的wsdl檔案找到service name= 從下往上找
4.新建TestWsdl.java
package cn.com.webxml;
import java.util.List;
import cn.com.webxml.TranslatorResponse.TranslatorResult;
public class TestWsdl {
public static void main(String[] args) {
// 獲取服務類
EnglishChinese englishChinese = new EnglishChinese();
// 實現介面
EnglishChineseSoap englishChineseSoap = englishChinese.getEnglishChineseSoap();
// 呼叫方法:中英文雙向翻譯
ArrayOfString translatorString = englishChineseSoap.translatorString("單詞");
System.out.println(translatorString.string);
// 呼叫方法:中英文雙向翻譯(例句)
ArrayOfString translatorSentenceString = englishChineseSoap.translatorSentenceString("單詞");
System.out.println(translatorSentenceString.string);
}
}
控制檯輸出
此部落格具體專案程式碼例子在:https://download.csdn.net/download/zeal9s/10721799
說在最後的話:編寫實屬不易,若喜歡或者對你有幫助記得點贊+關注或者收藏哦~