WEBservice的多种方式

转载自:https://www.cnblogs.com/wuyongyin/p/11850585.html

WebService是一种跨编程语言、跨操作系统平台的远程调用技术,已存在很多年了,很多接口也都是通过WebService方式来发布的;本系列文章主要介绍Java调用WebService的各种方法,使用在线的中文简体字<->繁体字转换服务(http://www.webxml.com.cn/WebServices/TraditionalSimplifiedWebService.asmx)作为测试服务端,使用其中的简体字转换为繁体字方法toTraditionalChinese来演示WebService的调用。本文主要做些准备工作,方便后续文章中实际的调用。

1、WSDL

为了防止该在线WebService不可用,这里把WSDL贴在这里,方便与代码对照。

http://www.webxml.com.cn/WebServices/TraditionalSimplifiedWebService.asmx?wsdl

 View Code

2、用SoapUI生成Soap消息

该在线WebService同时实现Soap1.1和Soap1.2,这里分别生成消息。

2.1、Soap1.1

查询xml

查看Raw

2.1、Soap1.2

查看xml

查看Raw

3、本地WebService服务

由于我们用的在线WebService服务端为.NET实现的,而我们客户端是JAVA,如果是RPC方式调用则无法调用;这里创建一个本地的JAX-WS实现的WebService,用于这个系列文章中RPC方式的调用。RPC已经过时,但为了技术的完整性,也记录下。

3.1、接口类

复制代码
package com.inspur.zsyw.ws;

import javax.jws.WebParam;
import javax.jws.WebService;

@WebService
@SOAPBinding(style = SOAPBinding.Style.RPC) public interface ITestService { String hello(@WebParam(name = "name") String name); }
复制代码

3.1、实现类

复制代码
package com.inspur.zsyw.ws.impl;

import com.inspur.zsyw.ws.ITestService;

@javax.jws.WebService(endpointInterface="com.inspur.zsyw.ws.ITestService", targetNamespace = "http://ws.zsyw.inspur.com/", serviceName = "TestService")
public class TestServiceImpl implements ITestService {
    @Override
    public String hello(String name) {
        return "hello," + name;
    }
}
复制代码

3.3、本地WSDL

http://10.40.103.48:9006/zsywservice/TestService?wsdl

 View Code

4、调用

本文主要介绍一些准备工作,具体调用参见下列文章:

Java调用WebService方法总结(2)--JAX-WS调用WebService

Java调用WebService方法总结(3)--wsimport调用WebService

Java调用WebService方法总结(4)--Axis调用WebService

Java调用WebService方法总结(5)--Axis2调用WebService

Java调用WebService方法总结(6)--XFire调用WebService

Java调用WebService方法总结(7)--CXF调用WebService

Java调用WebService方法总结(8)--soap.jar调用WebService

Java调用WebService方法总结(9,end)--Http方式调用WebService

原文地址:https://www.cnblogs.com/UUUz/p/12176588.html