如何使用WebService服务
此博文对应的WebService服务端为使用JDK发布一个简单WebService 。现在我们就要使用这个WebService。
首先要使用JDK自带的命令wsimport,它可以根据wsdl文档生成客户端调用代码的工具.无论服务器端的WebService是用什么语言写的,都将在客户端生成Java代码.服务器端用什么写的并不重要.wsimport.exe位于JAVA_HOME\bin目录下.
常用参数为:
-d<目录> - 将生成.class文件。默认参数。
-s<目录> - 将生成.java文件。
-p<生成的新包名> -将生成的类,放于指定的包下。
(wsdlurl) - http://server:port/service?wsdl,必须的参数。
示例:控制台中C:\Documents and Settings\Administrator>wsimport -s F:\ -p com.client.jdk.wsimporthttp://localhost:1111/hello?wsdl生成的文件如下:
注意:-s不能分开,-s后面是要存储的位置,用于指定源代码生成的目录 。你可以将生成的客户端调用代码工具打包成jar,也可以不打包直接使用,将它复制到你客户端程序中使用即可。
创建一个WSClient的工程,将刚刚生成的客户端调用代码的工具复制到工程里,如图:
编写客户端调用自己写的服务类 Client.java
package com.client.jdk;
import com.client.jdk.wsimport.MyHelloService;
import com.client.jdk.wsimport.MyHelloServiceService;
/**
* @author jackphang
* @date 2013-4-11
* @description 根据wsimport命令生成客户端代码来调用WebService服务 F:\>wsimport -s . -p
* com.client.jdk.wsimport
* http://localhost:1111/hello?wsdl会生成两种文件.class和.java 。
* 而在C:\Documents and Settings\Administrator>wsimport -s F:\ -p
* com.client.jdk.wsimpo rt
* http://localhost:1111/hello?wsdl,只会生成.java的文件
*/
public class Client {
/**
* @param args
*/
public static void main(String[] args) {
// 获取WebService提供的服务
MyHelloServiceService service = new MyHelloServiceService();
// 获得自己提供的服务
MyHelloService helloService = service.getMyHelloService();
// 调用服务中的方法
String str = helloService.mySayHello("你大爷的", 1);
System.out.println("服务器返回:" + str);
}
}
前提是你的服务端必须启动才能调用成功,或者会抛出如下异常
Exception in thread "main" javax.xml.ws.WebServiceException: Failed to access the WSDL at:http://localhost:1111/hello?wsdl. It failed with:
Connection refused: connect.
我们生成的客户端代码工具已经封装好了对服务器端服务的访问,底层是通过Socket访问的,所以我们编写很小的代码就能访问网络中的服务。
如何使用WebService服务相关推荐
- linux webservice服务器端,Linux查看资源使用情况 webservice服务端口监控
本人在最近的项目过程中,发现一个很严重的问题 在我们写的一个应用中,jboss作应用程序的容器,其中加载了webservice服务.每次服务运行一段时间后,大概几天时间以后,发现很奇怪的现象.我们的j ...
- java cxf服务端代码_【JAVA】 cxf 生成 webservice 服务端代码
CXF Apache CXF = Celtix + XFire.CXF 继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS 全面的支持,并且提供了多种 Binding . ...
- 使用Axis2创建一个简单的WebService服务
使用过Java进行过WebService开发都会听过或者接触过Apache Axis2,Axis2框架是应用最广泛的WebService框架之一了. 这里使用Axis2来开发和部署一个最简单的WebS ...
- Spring和CXF整合发布WebService(服务端、客户端)
参考Spring和CXF整合发布WebService(服务端.客户端) 转载于:https://www.cnblogs.com/timspace/p/11113576.html
- [置顶]WebService学习总结(4)——第三方webService服务调用
互联网上面有很多的免费webService服务,我们可以调用这些免费的WebService服务,将一些其他网站的内容信息集成到我们的Web应用中显示,下面就以获取天气预报数据和查询国内手机号码归属地为 ...
- java调用webservice_WebService学习总结(四)——调用第三方提供的webService服务
只为成功找方法,不为失败找借口! 互联网上面有很多的免费webService服务,我们可以调用这些免费的WebService服务,将一些其他网站的内容信息集成到我们的Web应用中显示,下面就以获取天气 ...
- 【客户下单】后台提供webservice服务接收数据
[客户下单]后台提供webservice服务接收数据 在bos_fore系统中,添加OrderAction封装订单数据. 接下来调用webservice,将数据传递给bos_management系统. ...
- .NET创建WebService服务简单的例子
Web service是一个基于可编程的web 的应用程序,用于开发分布式的互操作的应用程序,也是一种web服务 WebService的特性有以下几点: 1.使用XML(标准通用标记语言)来作为数据交 ...
- VS2008非托管c++访问webservice服务(以WeatherWS 天气服务 为例)
在Visual Studio 2008以及以后版本中,微软停止了非托管C++的直接WebService引用.不过ATL Server代码已经托管到开源网站上,我们可以找到ATL Server的源代码, ...
- 外部系统调用PO的webservice服务,往SAP系统发送数据,用的XISOAPAdapter的方式,出现错误
我的微信群里有朋友提问: 外部系统调用PO的webservice服务,往SAP系统发送数据,用的XISOAPAdapter的方式,出现这个错误 我的回答: https://answers.sap.co ...
最新文章
- Openssl私建CA
- ci mysql 事务_MySQL事务-学习笔记
- jar容器部署成功无法访问_Spring Boot 应用程序五种部署方式
- rabbitmq的启动命令和springboot整合使用rabbitmq
- 装修仿720VR全景平台网站源码
- 推荐系统之 BPR 算法及 Librec的BPR算法实现【1】
- 华为智能手环智能手表软件测试,一块智能手表的测试之旅,揭秘华为运动健康科学实验室...
- matlab mat文件 太大,MATLAB .mat文件中的开销过大
- python高级-闭包-装饰器
- npoi excel 复制行_Excel的格式刷功能你真的会用吗?这样刷更加方便快捷
- 吴恩达机器学习5——神经网络的学习
- Bzoj2527--Poi2011Meteor
- add_subplot()--matplotlib
- 生成QQ/MSN/旺旺/SKYPE等在线状态图标
- 软件工程——清华大学《软件工程》课程学习与分享
- 微信小程序后台服务器搭建
- 通用电源模块的测试方法及性能指标
- 《树莓派4B家庭服务器搭建指南》第六期:将RSSHub私有化部署到树莓派,并通过《嘎!RSS》订阅自己的信息流...
- MPS2326 Constant-On-Time (COT) Step-Down Converter DC-DC
- 终于有人把数据安全讲明白了
热门文章
- 【小技巧】2345——劫持浏览器主页(Chrome、Edge)
- 向Oracle表中的添加数据
- BPFT1.7,全名BaiduPanFilesTransfers免费的百度网盘批量转存工具【精】
- 垂钓之王hd_它的专业人士指南,以阻止网络钓鱼
- 计算机为啥系统保护设置不了,我的电脑为什么设置了屏幕保护程序而不起作用 – 手机爱问...
- Java/输入圆形半径,求圆形的周长和圆形的面积
- 计算物品的良率(python)
- Unity 画面质量设置
- python处理svg_用Python/PIL读取SVG文件
- 微信里的网址链接域名如何自动跳转到外部浏览器访问源码