`
赵大帅
  • 浏览: 5448 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Java Webservice调用

 
阅读更多

WebService可分为服务器端和客户端,服务器端主要对webService进行发布和维护,服务器端可以由Java或者C#等语言来开发,最终生成WebService的时候实际上是以xml的形式存在的。多的不介绍了,直接说下如何在Java里解析webService

这里主要用到的框架是 Axis2 , 所以需要提前去下载所需要用到的Jar包,如果不知道具体需导入哪个的话索性就把所有的Jar包都导入到项目中,jar包下载路径可以百度一下

方法一:自己写代码解析webservice

前提是我们要知道wsdl的地址,这个地址可以是自己写的也可以是从互联网上找到的,有很多,百度一下就都出来了

import javax.xml.namespace.QName;

import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.rpc.client.RPCServiceClient;

public class Test {
	public static void main(String[] args) throws Exception {
		// 使用RPC方式调用webservice
		RPCServiceClient serviceClient = new RPCServiceClient();
		Options options = serviceClient.getOptions();

		// 指定调用的webservice的URL
		EndpointReference targetEPR = new EndpointReference(
				"http://localhost:8080/InternalSystem/services/CalculatorService");
		options.setTo(targetEPR);

		// 指定add方法参数信息
		Object[] opAddEntryArgs = new Object[] { 10, 20 };
		Class[] classes = new Class[] { Double.class };
		
		QName opAddEntry = new QName("http://webservice.zx.com","add");
		
		System.out.println(serviceClient.invokeBlocking(opAddEntry, opAddEntryArgs, classes)[0]);
	}
}

 方法二:用wsdl2java,先将已存在的webservice生成本地的Java文件,然后再调用,代码量要比方法一少的多

首先先通过Axis2将webservice生成本地的Java文件

%AXIS2_HOME%\bin\wsdl2java -uri http://www.webxml.com.cn/WebServices/IpAddressSearchWebService.asmx?wsdl -p client -s -o stub

 其中-url参数指定了wsdl文件的路径,可以是本地路径,也可以是网络路径。-p参数指定了生成的Java类的包名,-o参数指定了生成的一系列文件保存的根目录。在执行完上面的命令后,读者就会发现在当前目录下多了个stub目录,在."stub"src"client目录可以找到一个SimpleServiceStub.java文件,该文件复杂调用WebService,读者可以在程序中直接使用这个类,代码如下:

import client.CalculatorServiceStub;
import client.IpAddressSearchWebServiceStub;

public class Test {
	
	
	public static void main(String[] args) throws Exception {
		
		IpAddressSearchWebServiceStub stub = new IpAddressSearchWebServiceStub();
		IpAddressSearchWebServiceStub.GetCountryCityByIp getCountryCityByIp = new IpAddressSearchWebServiceStub.GetCountryCityByIp();
		getCountryCityByIp.setTheIpAddress("11.75.20.56");
		String[] returns = stub.getCountryCityByIp(getCountryCityByIp).getGetCountryCityByIpResult().getString();
		for(String s : returns ){
			System.out.println(s);
		}
	}
}

 

 

分享到:
评论

相关推荐

    Java Webservice调用方式详解

    Java WebService调用方式详解主要涉及两种方法:Axis和SOAP。这两种方式都是用来与Web服务进行交互,调用远程服务的方法。以下将详细介绍这两种方法。 1. Axis方式调用: Axis是Apache的一个开源项目,它提供了一...

    C#调用JavaWebService

    调用WebService,最简单的办法当然是直接添加WEB引用,然后自动产生代理类,但是在调用JAVA的WebService时并没有这么简单,特别是对于SoapHeader的处理,通过C#添加Web引用方式访问JavaWebService的方法,除了string...

    java WebService调用的几种方式详细源代码

    在Java开发中,WebService是一种基于XML的通信标准,用于...而对于需要与其他系统(尤其是旧系统)集成的情况,可能需要支持SOAP的WebService调用。无论哪种方式,理解其工作原理并掌握相应的调用方式都是非常重要的。

    java调用webservice.zip

    java调用webservicejava调用webservice.zipjava调用webservice.zipjava调用webservice.zipjava调用webservice.zipjava调用webservice.zipjava调用webservice.zipjava调用webservice.zipjava调用webservice.zipjava...

    java 调用https webservice实例及axis包

    Apache Axis是一款开源的Web Service框架,它使得Java开发者能够方便地创建和调用Web Service。对于HTTPS的支持,Axis提供了相应的配置和工具。 调用HTTPS Web Service的步骤大致如下: 1. **添加依赖**:首先,你...

    Java中如何通过https调用Webservice接口_测试环境.rar

    在Java开发中,HTTPS(Hypertext Transfer Protocol Secure)调用Web Service接口是常见的网络通信方式,主要用于确保数据传输的安全性。本主题将详细讲解如何在Java环境下通过HTTPS协议来安全地调用Web Service接口...

    java 调用 odi webservice

    ODI(Oracle Data Integrator)是一种数据集成平台,提供了webservice接口,允许用户通过webservice调用ODI方案执行,从而实现数据的同步。 在本文档中,我们将通过 Java 应用程序调用 ODI webservice,实现数据的...

    asp.net通过WebService调用Java接口全过程

    总结来说,ASP.NET通过WebService调用Java接口的过程主要包括:部署Java WebService、在.NET项目中添加Web引用、配置项目设置、在代码中实例化并调用服务方法,以及理解背后涉及的SOAP和RMI通信机制。这个过程允许...

    java webservice

    本篇将深入探讨Java WebService的开发实例,包括如何创建与调用Web服务。 一、Java WebService开发实例 1. 创建Java WebService 要创建一个Java WebService,首先需要定义一个Java接口或类,该接口或类中的方法将...

    java调用json参数的webservice

    在探讨Java调用带有JSON参数的WebService之前,我们首先需要了解几个关键的技术概念:Java、JSON以及WebService。 Java是一种广泛使用的编程语言,它具有面向对象、跨平台、多线程以及健壮性等特点。Java在企业级...

    delphi调用Java webservice实例

    标题 "Delphi调用Java WebService实例" 涉及的是在Delphi编程环境中如何与Java WebService进行交互的技术。Delphi是一款强大的Windows应用程序开发工具,而Java WebService则是一种基于标准的,跨平台的远程调用技术...

    java调用webservice接口案例,service调用webservice接口

    java调用webservice接口案例,精简,service调用webservice接口案例;不用生成一堆代码,逻辑清晰

    Java webservice cxf客户端调用demo和服务端

    Java WebService CXF客户端调用和服务端的实现是企业级应用程序中常见的通信方式,它基于标准的SOAP(Simple Object Access Protocol)协议,提供了一种在分布式环境中交换信息的方法。CXF是一个开源框架,它简化了...

    java+soap+webservice 调用模拟

    通过阅读提供的"java-soap-webservice"文档,你可以进一步了解具体的实现步骤,包括如何设置项目、配置JAX-WS、生成客户端代码、编写调用服务的代码,以及如何解析响应。实践中,不断动手操作和调试是掌握这一技术的...

    java android 调用webservice

    本篇将详细讲解如何在Android应用中使用Java调用Webservice。 一、理解Web服务 Web服务是一种基于互联网的、标准化的服务交互方式,它允许不同系统之间的应用程序共享数据和功能。常见的Web服务有SOAP(Simple ...

    .net调用java WebService

    ### .NET调用Java WebService的关键知识点 #### 一、背景与原理介绍 在实际的软件开发过程中,不同技术栈之间的交互变得越来越普遍。对于.NET应用程序来说,有时需要调用由Java开发的WebService。这种跨平台的服务...

    PB调用JAVA WEBSERVICE实例

    标题中的“PB调用JAVA WEBSERVICE实例”指的是使用PowerBuilder(PB)应用程序调用由Java编写的Web服务。在企业级应用开发中,不同语言之间的互操作性是非常重要的,而Web服务提供了一种标准的方式来实现这一点。让...

    JAVA调用WEBSERVICE接口

    JAVA调用WEBSERVICE接口

    JAVA 调用SAP SOAP webservice.docx

    JAVA 调用 SAP SOAP webservice 详解 在本文中,我们将详细介绍如何使用 JAVA 调用 SAP SOAP webservice,包括配置 SAP 登录信息、创建 java 项目、添加 web 服务客户端、生成 JAVA 类、调用接口等步骤。 配置 SAP...

    c#调用Java webService的专题(一)

    本文将深入探讨如何使用C#调用Java WebService,这是实现.NET与Java平台间互操作性的一个重要方式。我们将首先理解WebService的基本概念,然后详细讲解C#中如何通过.NET Framework的SOAP客户端代理类来调用Java ...

Global site tag (gtag.js) - Google Analytics