import java.net.URL; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.Map; import java.util.Set; import javax.xml.namespace.QName; import org.apache.axis.AxisEngine; import org.apache.axis.Constants; import org.apache.axis.client.Call; import org.apache.axis.client.Service; import org.apache.axis.description.OperationDesc; import org.apache.axis.description.ParameterDesc; import org.apache.axis.soap.SOAPConstants; public class TestWS { static OperationDesc [] _operations = new OperationDesc[9]; public static void _initParam(String method,Map<String, String> params){ OperationDesc oper = new OperationDesc(); ParameterDesc param; oper.setName(method); Set<String> set = params.keySet(); Iterator<String> iter = set.iterator(); while (iter.hasNext()){ String key = iter.next(); param = new ParameterDesc(new QName("", key),ParameterDesc.IN,new QName("http://www.w3.org/2001/XMLSchema", "string"),java.lang.String.class, false, false); param.setOmittable(true); oper.addParameter(param); } oper.setReturnType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); oper.setReturnClass(java.lang.String.class); oper.setReturnQName(new javax.xml.namespace.QName("", "return")); oper.setStyle(org.apache.axis.constants.Style.WRAPPED); oper.setUse(org.apache.axis.constants.Use.LITERAL); _operations[0] = oper; } public static void initService(String ws_url,Map<String, String> params,String method){ _initParam(method,params); int size = params.size(); int i = 0; Object param[] = new Object[size]; Set<String> set = params.keySet(); Iterator<String> iter = set.iterator(); while (iter.hasNext()){ String key = iter.next(); param[i] = params.get(key); i ++; } try { Service service = new Service(); Call call = (Call) service.createCall(); call.setOperation(_operations[0]); call.setUseSOAPAction(true); call.setSOAPActionURI(""); call.setEncodingStyle(Constants.NS_PREFIX_SCHEMA_XSD); call.setProperty(Call.SEND_TYPE_ATTR, Boolean.FALSE); call.setProperty(AxisEngine.PROP_DOMULTIREFS, Boolean.FALSE); call.setSOAPVersion(SOAPConstants.SOAP11_CONSTANTS); call.setTargetEndpointAddress(new URL(ws_url)); call.setOperationName(new QName(ws_url,method)); String ret = (String) call.invoke(param); System.out.println(ret); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { String method = "method";//接口方法 String xml = "xml";//接口参数 String ws_url = "ws_url";//接口地址 Map<String, String> params = new LinkedHashMap<String, String>();//使用linkedhashmap保持参数put的先后顺序与接口方法参数顺序一致 params.put("xml", xml);//此处需要注意key值需要与接口方法的参数名字一致 params.put("xml1", xml);// params.put("xml2", xml);//多个参数需要put多次,put的参数个数需要与接口参数个数一致 initService(ws_url, params, method); } }
使用到一下jar,axis.jar、axis-ant.jar、commons-discovery-0.2.jar、commons-logging-1.0.4.jar、jaxrpc.jar、mail-1.4.jar、wsdl4j-1.5.1.jar
相关推荐
JAVA调用WEBSERVICE接口
Java调用WebService接口方法是Java开发中常见的任务,尤其在分布式系统和跨平台通信中扮演着重要角色。这里我们主要探讨使用Apache Axis库来实现这一功能。Apache Axis是一款开源工具,它提供了Java到SOAP(简单对象...
java调用webservice接口案例,精简,service调用webservice接口案例;不用生成一堆代码,逻辑清晰
Java调用WebService接口是Web应用程序开发中的常见任务,主要用于实现不同系统间的远程通信和数据交换。在本资料中,我们重点关注Java如何与基于SOAP(Simple Object Access Protocol)的WebService进行交互。 1. *...
本文将深入探讨如何使用Java调用WebService接口,以实例分析有参方法Add的使用技巧。 首先,我们需要了解WebService的基础知识。WebService是一种基于开放标准(如SOAP、WSDL和UDDI)的Web应用程序,它能够通过HTTP...
本教程将深入探讨如何使用Axis库来实现在Java中调用WebService接口。Axis是一个开源的Java SOAP栈,它提供了从Java代码中创建和消费Web服务的能力。 **一、什么是WebService?** WebService是一种基于XML的协议,它...
本示例,"JAVA调用Webservice接口Demo",将向我们展示如何利用Java来与Webservice进行交互,主要包含两个功能:IP查询和根据省份查找城市。这个项目可以直接运行,方便开发者快速理解并应用到实际项目中。 首先,...
### Node.js 和 Java 调用 WebService 接口总结 #### 一、Java 实现方式 在 Java 中,调用 WebService 接口通常涉及使用 Apache CXF 或其他类似的库来生成客户端代码并进行调用。以下是具体的步骤: ##### 1. ...
Java Axis 直接调用webservice 接口工具类, 无需根据wsdl编译客户端,需要axis相关包,测试使用axis 1.4, 附demo引入axis包后直接可以测试;
Java调用WebService接口的方法主要涉及两个关键点:一是理解WebService的工作原理,二是使用相应的Java库进行调用。本文将详细讲解这两个方面。 首先,WebService是一种基于标准的、平台和语言无关的通信方式,它...
总之,Java调用WebService接口涉及多个库和jar包,通过理解相关概念和技术,可以有效地实现跨系统的数据交换。在实际开发中,根据项目需求选择合适的工具和库,合理优化,确保服务调用的稳定性和效率。
"Java 使用 XFire 调用 webService 接口" 在本文中,我们将学习如何使用 XFire 框架在 Java 中调用 webService 接口。XFIRE 是一个基于 Java 的开源框架,用于简化 Web 服务的开发和集成。下面,我们将通过一个简单...
Java 调用 Webservice 接口方法 Webservice 是一种基于网络的远程过程调用(RPC)机制,允许不同的系统之间进行交互和数据交换。Java 调用 Webservice 接口方法是将 Webservice 集成到 Java 应用程序中的一个重要...
"Java调用Webservice接口的jar包"描述的可能是一个包含了一系列Java库的压缩包,这些库可以帮助开发者更容易地与Web服务交互。 首先,Java中用于调用Web服务接口的主要工具有 Axis2、JAX-WS(Java API for XML Web ...
Java调用WebService接口是开发中常见的一种跨平台通信方式,主要通过SOAP(Simple Object Access Protocol)协议进行数据交换。在本篇文章中,我们将探讨如何在Java中调用WebService接口,特别是基于WSDL(Web ...
Java调用WebService接口是开发中常见的一种跨平台通信方式,主要通过SOAP(Simple Object Access Protocol)协议进行数据交换。在本篇文章中,我们将探讨如何在Java中调用基于WSDL(Web Service Description ...
综上所述,通过Java调用HTTPS Web Service接口涉及的关键点包括证书的信任管理、自定义`SSLSocketFactory`以及正确处理网络请求。了解并掌握这些知识点,能帮助开发者在安全的环境中进行Web Service交互。
在探讨Java调用带有JSON参数的WebService之前,我们首先需要了解几个关键的技术概念:Java、JSON以及WebService。 Java是一种广泛使用的编程语言,它具有面向对象、跨平台、多线程以及健壮性等特点。Java在企业级...
2. **创建WebService客户端**:使用WSDL(Web Service Description Language)文件,你可以自动生成Java客户端代码。Eclipse和MyEclipse都有工具可以做到这一点。WSDL文件描述了Web服务的接口、操作、消息格式等。 ...