• 收藏

【实战】使用Java调用WCF服务

2017/10/9 13:51:55   易思捷科技


WCF是微软提供的数据通讯框架,比较好用,可以使用webservice,也可以使用TCP/IP通讯,当前大部分的分布式系统基本都采用webservice,还是一个实战的项目,网络矿工数据采集服务引擎采用的就是wcf,对外提供任务操作接口,以方便用户使用。

WCF在微软技术体系内使用极为方便,直接进行服务引用即可。
在Java平台中使用,会有些繁琐。直接使用axis,采用正常的webservice的方式调用,会报错。参考了一些文档,axis提供了eclipse插件,可以生成wcf客户端代码进行调用。

在此,我们不采用此方式,太繁琐了,于是使用wsimport,wsimport可以根据wsdl生成客户端代码,更加方便一些。于是采用此方法进行。

先启动wcf服务,将地址代入浏览器查看,启动是否成功?


可以看到服务启动成功,当前为了测试效果,我们将wcf宿主在winform程序中,便于调试。


cmd,进入dos窗口,运行:

wsimport -s wcf  http://192.168.1.146:8000/tServer?wsdl

-s 表示生成的是源码,wcf是指生成源码后存放的目录。

运行成功后,进入wcf目录,可以看到生成的结构。


启动eclipse,建立一个java project,键入以下代码,实现wcf服务调用:

CGatherControlImpl gControl=new CGatherControlImpl(); 
ITaskControl iTaskControl=gControl.getBasicHttpBindingITaskControl();
iTaskControl.startTask("百度新闻");

在.net项目中,StartTask方法中,设置断点,然后开始运行项目,


可以看到,在.Net项目中,断点被中断了,表示java客户端调用成功了,查看参数值:百度新闻。

至此,java调用wcf服务成功!


版权声明:如无特别说明,均为“易思捷IT训练营”原创,如转载请著名出处!

阅读:207  评论:0  
  • 评论