【webservice】使用命令wsimport构建WebService客户端
wsimport命令介绍
在JDK的bin文件夹中,有一个wsimport.exe,这个工具依据wsdl文件生成相应的类文件,然后用这些类文件,就可以像调用本地的类一样调用WebService提供的方。该工具可以用于非Java的服务器,如:用C#编写的WebService,通过wsimport则生成Java的客户端实现。对于命令的使用方法,我们以开放的中文简体字与繁体字转换Web Service接口为例,如下:
在命令提示符中使用如下命令:
wsimport -keep -p com.zhj2f.client http://www.webxml.com.cn/WebServices/TraditionalSimplifiedWebService.asmx?wsdl

package test; import com.zhj2f.client.TraditionalSimplifiedWebService;
import com.zhj2f.client.TraditionalSimplifiedWebServiceSoap; public class test {
public static void main(String args[]){ TraditionalSimplifiedWebService tsws = new TraditionalSimplifiedWebService();
TraditionalSimplifiedWebServiceSoap tss = tsws.getTraditionalSimplifiedWebServiceSoap(); String res = tss.toTraditionalChinese("我是谁");
System.out.println(res); }
}
当然我们还可以使用上面同样的方法调用天气预报提供的开放webservice接口,只是天气预报的那个接口有点不同。如果我们直接使用wsimport 通过wsdl地址生存java 文件时,会报错。因为该wsdl里面包含 ref = "s:schema" 这样的引用。而jaxb是不支持的。所以手动将该wsdl下载(也就是网页另存为)下来做下修改,然后再生成java文件。
修改方法为:将所有的<s:element ref="s:schema"/> 改成 <s:any minOccurs="2" maxOccurs="2"/>,并且删除<s:any/>。
然后再通过wsimport生成java文件,就可以正常使用了。
参考资料:
[1] http://www.cnblogs.com/simle/archive/2011/11/03/2233417.html
[2] http://blog.csdn.net/lun379292733/article/details/18035915
[3] 常用Web Service汇总
【webservice】使用命令wsimport构建WebService客户端的更多相关文章
- 使用命令wsimport构建WebService客户端
原文:http://www.cnblogs.com/ningvsban/p/3760085.html wsimport命令介绍 在JDK的bin文件夹中,有一个wsimport.exe,这个工具依据w ...
- java使用命令wsimport构建WebService客户端
wsimport -d d: -keep -extension -p com.demo.client http://192.168.33.3//RECEPTIONws.ASMX?WSDL 客户端:在J ...
- 使用命令wsimport生成WebService客户端
使用命令wsimport生成WebService客户端 wsimpost命令有几个重要的参数: -keep:是否生成java源文件 -d:指定输出目录 -s:指定源代码输出目录 -p ...
- 使用wsimport生成webservice客户端代码
服务端 package com.xc.webservice; import javax.jws.WebService; import javax.xml.ws.Endpoint; @WebServic ...
- webservice发布服务:CXF及客户端调用
2.CXF:(与spring整合) CXF相对来说操作没有AXIS繁琐 1.导入spring的jar包和cxf的jar包 2.在spring的核心配置文件中配置发布的接口类 <?xml vers ...
- cxf构建webservice的两种方式
一.简介 对于基于soap传输协议的webservice有两种开发模式,代码优先和契约优先的模式.代码优先的模式是通过编写服务器端的代码,使用代码生成wsdl:契约优先模式首先编写wsdl,再通过ws ...
- SpringBoot | 第三十四章:CXF构建WebService服务
前言 上一章节,讲解了如何使用Spring-WS构建WebService服务.其实,创建WebService的方式有很多的,今天来看看如何使用apache cxf来构建及调用WebService服务. ...
- Java调用WebService方法总结(3)--wsimport调用WebService
wsimport是JDK自带的把WSDL转成Java的工具,可以很方便的生成调用WebService的代码.文中所使用到的软件版本:Java 1.8.0_191. 1.准备 参考Java调用WebSe ...
- 基于soapUI构建WebService测试框架
基于soapUI构建WebService测试框架 http://www.docin.com/p-775523285.html
随机推荐
- rabbitMQ在linux上安装
语言环境安装 一.编译安装方式 1.依赖环境的安装-如果需要用编译安装erlang语言环境,需要安装C++编译. yum -y install make gcc gcc-c++ kernel-deve ...
- mysql 批量数据循环插入
双重循环插入 DELIMITER ;; CREATE PROCEDURE test_insert() BEGIN DECLARE a INT DEFAULT 1; DECLARE b TINYINT ...
- Dijkstra和Floyd_warshall
import java.util.Arrays; import java.util.Scanner; /*题目描写叙述: 有n个城市.城市间有m条道路.每条道路都有长度d.给你起点城市s终点终点t.要 ...
- HTML5画布生成的3D飞船舰队效果
在线演示 本地下载 使用HTML5画布2D来模拟3D的空间效果,生成舰队飞行效果,了解如何开发,请阅读下面代码相关“轻视频”: HTML5画布模拟生成3D的舰队飞行效果
- 渗透测试工具SPARTA介绍
0x01 sparta安装 kali系统默认安装了sparta 需要基础环境: git clone https://github.com/secforce/sparta.git apt-get ins ...
- iOS 两个应用之间的切换
A 跳到B NSURL *urlT = [NSURL URLWithString:@"TestB://XXXXXXX"]; //注意“://”后面可以任意传参数.这些参数传过去后当 ...
- Python取得系统进程列表
一.上代码 import psutil for proc in psutil.process_iter(): try: pinfo = proc.as_dict(attrs=['pid', 'name ...
- 树莓派系统(Debain)中设置SSH服务开机自启动
一.方式: 禁用命令:sudo update-rc.d ssh disable 启用命令:sudo update-rc.d ssh enable 二.chkconfig的方式: 1.安装:apt-ge ...
- 路由器mtu值设置
MTU=最大传输单元 单位:字节 英文:Maximum Transmission Unit”我们平时上网时的各种操作,都是通过一个又一个“数据包”传输来实现的.而MTU指定了网络中可传输数据包的最大尺 ...
- JDBC编程之事务的使用教程
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/5868750.html 关于事务的理论知识.ACID特性等等,网上太多了,在此不一一重复.本文主要着重 事务 ...