當前位置:編程學習大全網 - 源碼下載 - Java調用wsdl,怎麽實現

Java調用wsdl,怎麽實現

java調用wsdl的步驟如下,主要是使用第三方框架:

步驟如下:

1.下載AXIS2類庫,AXIS2是目前java調用webservice的壹個主要方法(由於更新較頻繁,請自行google該類庫的網址)

2.由於是第三方webservice,直接引入AXIS2的包就可以用了,代碼如下:?

import?java.rmi.RemoteException;

import?javax.xml.rpc.ParameterMode;

import?javax.xml.rpc.ServiceException;

import?org.apache.axis.client.Call;

import?org.apache.axis.client.Service;

import?org.apache.axis.encoding.XMLType;

public?class?webServiceTest?{

public?String?invokeRemoteFuc()?{

String?endpoint?=?"http://localhost:8080/webservice/services/helloworld";

String?result?=?"no?result!";

Service?service?=?new?Service();

Call?call;

Object[]?object?=?new?Object[1];

object[0]?=?"Dear?I?miss?you";//Object是用來存儲方法的參數

try?{

call?=?(Call)?service.createCall();

call.setTargetEndpointAddress(endpoint);//?遠程調用路徑

call.setOperationName("say");//?調用的方法名

//?設置參數名:

call.addParameter("str1",?//?參數名

XMLType.XSD_STRING,//?參數類型:String

ParameterMode.IN);//?參數模式:'IN'?or?'OUT'

//?設置返回值類型:

call.setReturnType(XMLType.XSD_STRING);//?返回值類型:String?

result?=?(String)?call.invoke(object);//?遠程調用

}?catch?(ServiceException?e)?{

e.printStackTrace();

}?catch?(RemoteException?e)?{

e.printStackTrace();

}

return?result;

}

public?static?void?main(String[]?args)?{

webServiceTest?t?=?new?webServiceTest();

String?result?=?t.invokeRemoteFuc();

System.out.println(result);

}

}

該方法的原理很簡單,通過AXIS2封裝好的類設置URL和參數,直接調用就好了,我們要關註的就是設置URL,方法,還有方法的參數,其他的copy&paste好啦,很簡單吧,再看看其他的方法,我勒個去了,害我瞎搞兩天。遲點上個源碼***大家參考!

  • 上一篇:Mongodb源代碼分析書籍
  • 下一篇:帶有php開發環境的Linux
  • copyright 2024編程學習大全網