axis远程调用webservice怎么写

2024-11-02 11:26:23
推荐回答(2个)
回答1:

一、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在前台引用进来2、然后就可以通过JS程序进行调用,示例如下: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();

回答2:

说说我们公司开发过程中调用webservice的做法吧,仅供参考。
因为我们公司的系统特别的多,有时要想在自己负责的系统里面调用远程的webservice,这时就需要知道远程系统接口的设计文档,里面包括了调用接口需要输入的参数字段及类型、输出参数字段及其含义,要文档的另一个目的是可以使用工具将文档生成wsdl文件,后面生成客户端代码会使用到;如果没有文档,或者知道远程接口的uri也行,因为要使用axis2工具生成客户端代码,至少需要知道接口uri或者本地存在wsdl文件;客户端代码生成以后,就是在工程里面使用生成的客户端代码了,首先肯定是在需要调用接口的JAVA类里面参数获取了,获取到参数以后还要进行相关处理,使参数达到接口的参数要求,比如对参数类型进行一些必要的转换等,然后就是将参数传到接口调用的方法里面了,这个就要看具体接口了,毕竟每个接口里面的方法不尽相同,最后就是从接口里面获取返回的结果了。至于代码这类的教程网上还是很多的,我这只能说一个大概的思路,你也可以在网上看看其他大神的博客,有些里面写的还是很详细的,例如:http://blog.csdn.net/whs19910204648688/article/details/22723457