java调用.net的webservice

一.参考文献

1. http://www.cnblogs.com/xuqifa100/archive/2007/12/13/993926.html 使用.net如何发布web service

2.WebService跨语言的问题

3.Java调用DotNet WebService为什么那么难?

4. java调用.net服务例子

5.使用axis调用.net服务端

二.概述

前面写了一篇博客eclipse+webservice 是在java环境下进行的。考虑到webservice的跨系统,跨语言,跨网络的特性,下面写了一个实例来测试其跨语言的的特性。

首先是用asp.net开发一个webservice,然后再java中创建客户端来调用这个service。

三.实例

(1)打开visual studio 2010,新建项目,如下图所示:


新建的项目结果如下图所示:


(2)在Service1.asmx.cs中添加服务方法,代码如下:

(3)发布服务,按CTRL+F5运行项目,即可打开服务首页:http://localhost:5329/Service1.asmx,如下图所示:


上图中显示的就是我们在Service1.asmx.cs文件中定义的服务方法。点击“服务说明”可以查看webservice的wsdl文件。

(4)编写java客户端来测试webservice,java程序如下所示:

运行结果:

注意点:

(a)我们发现如果参数是String类型的,那么可以不需要设置call的参数 call3.setEncodingStyle(null); 但是如果传入参数为float类型,那么就必须加上这一条语句。

(b)设置返回值类型有两种方式:

一种是

另外一种是

这两种方法是等价的






posted @ 2011-12-13 18:29  xwdreamer  阅读(11490)  评论(1编辑  收藏  举报