WebService 基於Axis1.4框架(三)

       通過前兩篇,webservice接口已經完全發佈成功了,實現也已經完成。那使用webservice的那端如何調用webservice呢?有兩種方式,一種是直接通過url進行調用,這樣是不需要引入任何jar包的,直接通過代碼就可以訪問到webservice。還有一種就是通過引入客戶端的jar包來訪問webservice。這種形式,訪問webservice和調用普通的類基本沒有差別,客戶端jar包已經將訪問webservice的代碼給封裝起來了,所以,我們直接調用就好了。在實際的項目中,這兩種方式都有所應用。那我們先看看第一種方式是如何實現的。

String wsdlUrl = "http://10.31.1.139:18610/dm/services/EastBusinessService?wsdl";
Service  service = new Service();   //創建一個Service實例,注意是必須的!
Call call;
try {
    call = (Call) service.createCall();
    call.setTargetEndpointAddress(new URL(wsdlUrl));
    call.setOperationName("sayHello");  //要調用的方法名
     String res;
    res = (String) call.invoke(new Object[]{“nihao”});//傳入的參數
     System.out.println("return value is " +  res ); //打印輸出結果
} catch (ServiceException e) {
    e.printStackTrace();
} catch (MalformedURLException e) {
    e.printStackTrace();
} catch (RemoteException e) {
    e.printStackTrace();
}


第二種方式客戶端實現

EastBusinessService userlo=new EastBusinessServiceLocator();
IEastBusinessService user;
try {
    user = userlo.getEastBusinessService();
    System.out.println(user.sayHello(“nihao”));
} catch (ServiceException e1) {
    e1.printStackTrace();
}catch (RemoteException e) {
    e.printStackTrace();
}

        到這裏,webservice接口已經全部實現完成了。由剛開始的服務端部署,到後來的客戶端實現。Webservice的主要目標是跨平臺的可互操作性。在以下三種情況下,使用webservice能給我們帶來極大的好處。一、跨防火牆的通信,二、應用程序集成,三、B2B的集成,四、軟件和數據重用。


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章