文章目录
-
- 使用 axis 调用 WebService
-
- WebService 调用工具类
WebService 简介
能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件,就可相互交换数据或集成。依据 WebService
规范实施的应用之间,无论它们所使用的语言、平台或内部协议是什么,都可以相互交换数据。
也就是说可以实现多语言、跨平台数据交互。
使用 axis 调用 WebService
引入依赖
pom.xml
依赖如下:
<dependency> <groupId>org.apache.axis</groupId> <artifactId>axis</artifactId> <version>1.4</version> </dependency> <dependency> <groupId>org.apache.axis</groupId> <artifactId>axis-jaxrpc</artifactId> <version>1.4</version> </dependency> <dependency> <groupId>axis</groupId> <artifactId>axis-wsdl4j</artifactId> <version>1.5.1</version> </dependency> <dependency> <groupId>commons-discovery</groupId> <artifactId>commons-discovery</artifactId> <version>0.2</version> </dependency>
WebService 调用工具类
package com.micromaple.common.utils; import com.google.common.collect.Lists; import lombok.extern.slf4j.Slf4j; import org.apache.axis.client.Call; import org.apache.axis.client.Service; import org.apache.axis.encoding.XMLType; import org.apache.axis.encoding.ser.BeanDeserializerFactory; import org.apache.axis.encoding.ser.BeanSerializerFactory; import org.apache.axis.message.SOAPHeaderElement; import org.apache.axis.types.Schema; import org.apache.commons.collections.MapUtils; import javax.xml.namespace.QName; import javax.xml.rpc.ParameterMode; import java.util.List; import java.util.Map; imp