`
赵大帅
  • 浏览: 5465 次
  • 性别: 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 调用SAP SOAP webservice.docx

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

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

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

    PB调用JAVA WEBSERVICE实例

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

    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。这种跨平台的服务...

    JAVA调用WEBSERVICE接口

    JAVA调用WEBSERVICE接口

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

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

Global site tag (gtag.js) - Google Analytics