㈠ 怎麼調用webservice方法
首先, 你要先把你的WS服務啟動起來,就是http://localhost:8080/Example/services/HelloWorldService?wsdl
然後在你的另一個項目中建一個Webservice Client 客戶端,用來訪問你的WS服務。
建立Webservice Client 方法如下,在Eclipses中建立一個java工程,然後在src上右鍵--NEW---Other---Web Service Client --Xfire--在WsdL url 中寫上http://localhost:8080/Example/services/HelloWorldService?wsdl-----下一步結束。
在src里的會出現一些java文件,你找一個以Client結束的java文件,在裡面的main方法中會有個service對象,現在你就可以直接用這個對象了,service.peerstatus(參數)這樣寫就行了。
純手打啊,希望能對你有幫助。
㈡ 如何調用webservice里一方法
java調用WebService可以直接使用Apache提供的axis.jar自己編寫代碼,或者利用Eclipse自動生成WebService Client代碼,利用其中的Proxy類進行調用。理論上是一樣的,只不過用Eclipse自動生成代碼省事些。
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 soapHeaderElement = new SOAPHeaderElement("發布的wsdl里的targetNamespace里的url", "SoapHeader");
// soapHeaderElement.setNamespaceURI("發布的wsdl里的targetNamespace里的url");
// try
// {
// soapHeaderElement.addChildElement("string_itemName").setValue("blablabla");
// }
// catch (SOAPException e)
// {
// e.printStackTrace();
// }
// call.addHeader(soapHeaderElement);
//調用Web Service的方法
org.apache.axis.description.OperationDesc oper;
org.apache.axis.description.ParameterDesc param;
oper = new org.apache.axis.description.OperationDesc();
oper.setName("opName");
param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "arg0"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"), java.lang.String.class, false, false);
param.setOmittable(true);
oper.addParameter(param);
param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "arg1"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"), java.lang.String.class, false, false);
param.setOmittable(true);
oper.addParameter(param);
param = new org.apache.axis.description.ParameterDesc(new javax.xml.namespace.QName("", "arg2"), org.apache.axis.description.ParameterDesc.IN, new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"), java.lang.String.class, false, false);
param.setOmittable(true);
oper.addParameter(param);
oper.setReturnType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string"));
oper.setReturnClass(java.lang.String.class);
oper.setReturnQName(new javax.xml.namespace.QName("", "return"));
oper.setStyle(org.apache.axis.constants.Style.WRAPPED);
oper.setUse(org.apache.axis.constants.Use.LITERAL);
oper.addFault(new org.apache.axis.description.FaultDesc(
new javax.xml.namespace.QName("發布的wsdl里的targetNamespace里的url", "Exception"),
"Exception",
new javax.xml.namespace.QName("發布的wsdl里的targetNamespace里的url", "Exception"),
true
));
call.setOperation( oper );
call.setOperationName(new javax.xml.namespace.QName("發布的wsdl里的targetNamespace里的url", "opName"));
//調用Web Service,傳入參數
String res = ( String ) call.invoke( new Object[]("arg0","arg1"));
System.out.println("===============");
return res;
}
/**
* @param args
*/
public static void main(String[] args) {
try {
System.out.println(getResult());
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (RemoteException e) {
e.printStackTrace();
} catch (ServiceException e) {
e.printStackTrace();
} catch (SOAPException e) {
e.printStackTrace();
}
}
}
2、利用Eclipse自動生成WebService client代碼就容易多了:(由於還不會發圖片,就用語言描述了,大家酬和看吧。。。)
首先,new project,選擇other,在輸入框中輸入Web Service Client,選中搜索後的結果,點擊Next,在Service definition中輸入 WebService的發布地址,點擊Finish
這樣,WebService Client代碼已經生成好了。
接下來寫一個Test類,在main函數中輸入如下代碼:
String endpoint = "伺服器的WebService的地址";
YourWebServiceNameProxy umsp = new YourWebServiceNameProxy (endpoint);
try {
String resultStr = umsp.opMethod("arg0","arg1");
System.out.println(resultStr);
} catch (Exception e) {
System.out.println("異常");
e.printStackTrace();
} catch (RemoteException e) {
System.out.println("RemoteException異常");
e.printStackTrace();
}
㈢ 跪求一個通用的調用webservice的方法
一、WebService在cs後台程序中的調用
A、通過命名空間和類名直接調用
示例: WebService ws = new WebService(); string s = ws.HelloWorld();
B、通過添加WEB引用的方式調用,首先添加WEB引用,通過URL指向WEBSERVICE, 指定WEB引用名,假設為KK; 示例: kk.WebService n = new kk.WebService(); string ss=n.HelloWorld();
二、WebService在前台頁面的JS調用方法
1、首先通過下面的方法把Webservice在前台引用進來
1
2
3
4
5
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Services>
<asp:ServiceReference Path="WebService.asmx" InlineScript="True" />
</Services>
</asp:ScriptManager>
2、然後就可以通過JS程序進行調用,示例如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<script type="text/jscript">
function a()
{
WebService.HelloWorld(onresult);
} //這里的onresult是回調函數
function onresult(result)
{
alert(result);
}
function b()
{
WebService.add(1,2,onreturn)
}
function onreturn(result)
{
alert(result);
} //下面的'context'是上下文,可以通過回到函數通過重載的方式獲得;
function c()
{
WebService.div(1,1,onresultC,onerror,'context');
}
function onresultC(res,c)
{
alert(res);
alert(c);
} //onerror是獲得異常信息的回調函數,下面給出了獲得異常信息的方法
function onerror(error)
{
var a="";
a=String.format("獲取伺服器端異常的具體類型:{0}\t\n獲取詳細的異常描述信息:{1}\t\n獲取造成異常的:{2}\t\n獲取伺服器端異常的堆棧 跟蹤信息:{3}\t\n獲取一個布爾值,表示異常是否是由於網路連接超時造成的{4}", error.get_exceptionType(), error.get_message(), error.get_statusCode(), error.get_stackTrace(), error.get_timedOut()) alert(a); }
a();
b();
c();
</script>
㈣ 調用webservice方法
編寫一個webService方法的類文件,然後在其他文件里1、添加對webservice文件的引用來調用,2,在你的webservice文件里添加鏈接方法,類似於網頁地址的那種,然後在你的調用文件里通過鏈接調用對應方法
㈤ 如何調用webservice介面中的方法
webservice主要是一些站點為我們寫好了的方法,供我們調用,當然我們也可以自己去編寫自己的webservice,本文主要是通過一個小的實例,去如何調用webservice。下面先給出幾個常用的webservice的調用地址。
㈥ net常用的調用webservice的方法有哪些
直接在項目中右擊添加Web引用就可以啦,然後可以實例化一個WerService就可以調用他的方法了。
可以將發送按鈕設置成默認按鈕
也可以通過重載消息預處理函數截獲enter鍵消息
發送按鈕設置成默認按鈕如下:
第一:在資源里找到對話框
第二:選擇發送按鈕
第三:將該按鈕的屬性中的Default Button設置為true
對於重載消息預處理有人已經給出了回答,這里不再多說了
㈦ webservice 怎麼調用
一、WebService在cs後台程序中的調用A、通過命名空間和類名直接調用示例:WebServicews=newWebService();strings=ws.HelloWorld();B、通過添加WEB引用的方式調用,首先添加WEB引用,通過URL指向WEBSERVICE,指定WEB引用名,假設為KK;示例:kk.WebServicen=newkk.WebService();stringss=n.HelloWorld();二、WebService在前台頁面的JS調用方法1、首先通過下面的方法把Webservice在前台引用進來2、然後就可以通過JS程序進行調用,示例如下:----自寫小例子---webService---:[WebMethod]publicstringHelloWorld(){return"HelloWorld,wwg";}[WebMethod]publicintAddWwg(inta,intb){returna+b;}exe---usingCallWebService.localhost;//因為自己沒有定義命名空間namespaceCallWebService{publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}privatevoidbutton1_Click(objectsender,EventArgse){ServiceserviceWwg=newService();inti1=Int32.Parse(txt1.Text.ToString());inti2=Int32.Parse(txt2.Text.ToString());intiResult=serviceWwg.AddWwg(i1,i2);lb1.Text=iResult.ToString();}privatevoidbutton2_Click(objectsender,EventArgse){CallWebService.localhost.ServiceserviceWwg=newCallWebService.localhost.Service();stringstrResult=serviceWwg.HelloWorld();lb1.Text=strResult.ToString();}}}
㈧ 如何調用web service介面的某個方法
調用方法大致有三種方法:
1)使用,直接AXIS調用遠程的web service
2)直接SOAP調用遠程的webservice
3)使用wsdl2java把WSDL文件轉成本地類,然後像本地類一樣使用,即可。
我一般使用第三種,挺簡單的:
比如webservice的代碼如下:
@WebService
public class ServiceHello {
/*
* 供客戶端調用的方法
* @param name
* @return String
*/
public String getValue(String name){
return "我叫"+name;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Endpoint.publish("http://localhost:9001/Service/ServiceHello", new ServiceHello());
System.out.println("service success!");
}
}
1)先建立客戶端webservice項目,使用命令將WSDL文件轉成本地類,比如:
C:\Users\aiher\Workspaces\MyEclipse 2015\TheClient\src>wsimport -s . -p com.hyan.client -keep http://localhost:9001/Service/ServiceHello?wsdl
2)編寫客戶端測試類,調用服務端web service介面的某個方法,如下:
public class ServiceTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
ServiceHello hello = new ServiceHelloService().getServiceHelloPort();
String name = hello.getValue("Hyan");
System.out.println("name-:"+name);
}
}
㈨ 怎麼調用webservice介面里的方法
Stringwebservice=https://api.ums86.com:9600/sms_hb/services/Sms
Services=newService();
Callcall=(Call)s.createCall();
call.setTimeout(newInteger(5000));
call.setOperation("getSecurityToken");
call.setTargetEndpointAddress(newURL(webservice));
call.setOperationName("webservice的方法");
Object[]fn01={參數};
try{
Stringval=(String)call.invoke(fn01);
logger.debug("getSecurityToken(correct):"+val);
}catch(RemoteExceptione){
logger.error(e.getMessage());
}
請採納,謝謝
㈩ 怎麼調用webservice服務
寫一個WINDOWS服務定期調用webservice中的方法。
1、先建一個WebService(ASP.NET Web 服務應用程序)
2、建這個WebService的虛擬目錄
3、執行生成一個文件
{
C:\Program Files\Microsoft Visual Studio 8\VC>wsdl /language:C# /out:c:\myProxyClass.cs http://hostServer:88/ImportData.asmx?WSDL
這個工具(方法)是針對一個webservice生成一個能動態調用的類
language:C#-----C#語言輸出
c:\myProxyClass.cs-----這個是生成的文件存在本地的文件名和路徑
http://hostServer:88/ImportData.asmx-----是虛擬目錄運行時的地址
}
4、創建一個windows服務程序(新建項目->左側選windows->右側選windows服務),然後把生成的文件引入到windows服務的程序中
5、寫調用事件(BeginImportUFData)
6、完成後編譯生成一下,這時就會在此windows服務程序的bin文件夾下生成一個exe文件(如:MyNewService.exe
)
7、按以下方式安裝
安裝:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe 絕對路徑\MyNewService.exe
卸載:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe -u 絕對路徑\MyNewService.exe
例如:(用dos命令窗口執行)
安裝:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe E:\chengxu\MyNewService\MyNewService\bin\Debug\MyNewService.exe
【然後顯示:正在安裝程序集,最後顯示:「提交」階段成功完成】
卸載:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe -u E:\chengxu\MyNewService\MyNewService\bin\Debug\MyNewService.exe
【最後提示:卸載完成】
啟動、停止服務是window操作,找到管理-->服務 操作