當前位置:首頁 » 編程語言 » java開發webservice介面

java開發webservice介面

發布時間: 2025-03-03 09:24:57

java如何調用webservice介面

Java通過WSDL文件來調用webservice直接調用模式如下:

import java.util.Date;

import java.text.DateFormat;

import org.apache.axis.client.Call;

import org.apache.axis.client.Service;

import javax.xml.namespace.QName;

import java.lang.Integer;

import javax.xml.rpc.ParameterMode;

public class caClient {

public static void main(String[] args) {

try {

String endpoint = "http://localhost:8080/ca3/services/caSynrochnized?wsdl";

//直接引用遠程的wsdl文件

//以下都是套路

Service service = new Service();

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

call.setTargetEndpointAddress(endpoint);

call.setOperationName("addUser");//WSDL裡面描述的介面名稱

call.addParameter("userName", org.apache.axis.encoding.XMLType.XSD_DATE,

javax.xml.rpc.ParameterMode.IN);//介面的參數

call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);//設置返回類型

String temp = "測試人員";

String result = (String)call.invoke(new Object[]{temp});

//給方法傳遞參數,並且調用方法

System.out.println("result is "+result);

}

catch (Exception e) {

System.err.println(e.toString());

}

}

}

❷ 如何用java來獲取webservice數據

Java調用WebService可以直接使用Apache提供的axis.jar自己編寫代碼,或者利用Eclipse自動生成WebService Client代碼,利用其中的Proxy類進行調用。理論上是一樣的,只不過用Eclipse自動生成代碼省事些。以下是使用Java代碼獲取WebService數據的一個實例:

1. 編寫代碼方式:

package com.yun.test;

import java.rmi.RemoteException;

import org.apache.axis.client.Call;

import org.apache.axis.client.Service;

import org.apache.axis.message.PrefixedQName;

import org.apache.axis.message.SOAPHeaderElement;

import com.cezanne.golden.user.Exception;

import com.cezanne.golden.user.UserManagerServiceProxy;

import javax.xml.namespace.QName;

import java.net.MalformedURLException;

import javax.xml.rpc.ServiceException;

import javax.xml.soap.Name;

import javax.xml.soap.SOAPException;

public class testWebService {

public static String getResult() throws ServiceException, MalformedURLException, RemoteException, SOAPException {

//標識Web Service的具體路徑

String endpoint = "WebService服務地址";

// 創建 Service實例

Service service = new Service();

// 通過Service實例創建Call的實例

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

//將Web Service的服務路徑加入到call實例之中.

call.setTargetEndpointAddress(new java.net.URL(endpoint));//為Call設置服務的位置

// 由於需要認證,故需要設置調用的SOAP頭信息。

Name headerName = new PrefixedQName(new QName("發布的wsdl里的targetNamespace里的url", "string_itemName"));

org.apache.axis.message.SOAPHeaderElement header = new SOAPHeaderElement(headerName);

header.addTextNode("blablabla");

call.addHeader(header);

// 設置SOAPHeaderElement

Name soapHeaderName = new PrefixedQName(new QName("發布的wsdl里的targetNamespace里的url", "SoapHeader"));

SOAPHeaderElement soapHeaderElement = new SOAPHeaderElement(soapHeaderName);

call.addHeader(soapHeaderElement);

// 執行調用並返回結果

Object result = call.invoke(new Object[]{});
return result.toString();
}

}

以上代碼示例展示了如何通過Java代碼調用WebService,包括設置服務地址、添加SOAP頭信息以及執行調用。需要注意的是,這里的代碼需要根據實際的WebService服務地址和認證信息進行調整。

另外,如果想要使用Eclipse自動生成的代碼進行調用,可以按照以下步驟操作:

1. 在Eclipse中打開項目,右鍵選擇「New」 -> 「Web Services」 -> 「Client」;

2. 指定Web Service的URL和WSDL文件路徑;

3. 生成客戶端代碼後,可以使用生成的Proxy類進行調用,示例如下:

UserManagerServiceProxy proxy = new UserManagerServiceProxy();

String result = proxy.someMethod();

以上就是使用Java獲取WebService數據的基本方法,希望對您有所幫助。

❸ wsdl轉為JavaWeb工程(WebService介面開發)

使用eclipse和axsi2插件將wsdl轉換為JavaWeb工程進行WebService介面開發的流程如下:

首先,需將axsi2-1.6.4的兩個Jar文件拷貝至plugins目錄,並重啟eclipse。

然後,打開eclipse,在首頁點擊window-Preferences,配置Axis2 runtime location為axsi2-1.6.4安裝包所在位置,點擊Ok。

接下來,新建WebProject項目,填寫Project name為所需項目名稱(注意:Dynamic web mole version 選2.5),點擊完成。

點擊web項目名稱,右鍵選擇new-other-web Services,點擊Next,啟動server等待至Finish按鈕可點擊,表示工程已在eclipse下的tomcat下運行。

將eclipse中的tomcat停止,將web工程打成war包,發布到D:\apache-tomcat-7.0.59\webapps下,重啟tomcat。

按照以下地址訪問此工程:localhost:8080/wsdl2jav...http://localhost:8080/wsdl2javaManagementService。點擊Services,顯示以下Services介面,點擊[ManagementService],顯示以下WSDL文件,則表示發布成功。

熱點內容
c框架源碼下載 發布:2025-03-03 20:39:18 瀏覽:614
java實驗二 發布:2025-03-03 20:38:20 瀏覽:853
原神如何在電腦端切換伺服器 發布:2025-03-03 20:22:53 瀏覽:246
資料庫提取數據 發布:2025-03-03 20:22:49 瀏覽:229
ftp設置只能上傳 發布:2025-03-03 20:22:43 瀏覽:637
如何顯示本機連接的wifi密碼 發布:2025-03-03 20:21:50 瀏覽:67
如何檢查linux伺服器被防火牆擋住 發布:2025-03-03 20:19:28 瀏覽:331
丹姿水密碼上的日期是什麼 發布:2025-03-03 20:12:36 瀏覽:439
linuxroot給用戶許可權 發布:2025-03-03 19:50:34 瀏覽:679
android社招 發布:2025-03-03 19:42:01 瀏覽:917