`

使用RPC方式调用WebService

 
阅读更多

 

使用RPC方式调用WebService

 

import javax.xml.namespace.QName;

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

/**
 * 使用这个也可以直接访问同一个Tomcat下的项目
 * @author 14015
 *
 */
public class RPCClient {
	public static void demo(){
		// 使用RPC方式调用WebService
		RPCServiceClient serviceClient = null;
		try {
			serviceClient = new RPCServiceClient();
		} catch (AxisFault e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
		Options options = serviceClient.getOptions();
		// 指定调用WebService的URL
		EndpointReference targetEPR = new EndpointReference(
				"http://127.0.0.1:8999/VTMS3000/services/VTMS?wsdl");
		options.setTo(targetEPR);
		// 指定Hello方法的参数值
		Object[] opAddEntryArgs = new Object[] { "超人" };
		// 指定getGreeting方法返回值的数据类型的Class对象
		Class[] classes = new Class[] { String.class };
		// 指定要调用的HelloWord方法及WSDL文件的命名空间
		QName opAddEntry = new QName("http://service.dahuatech.com",
				"HelloWorld");
		// 调用HelloWord方法并输出该方法的返回值
		try {
			long i = System.currentTimeMillis();
			int num = 100;
			while(num --  > 0 ){
			System.out.println(" num = " + num + " " +serviceClient.invokeBlocking(opAddEntry,
					opAddEntryArgs, classes)[0]);
	
			}
			System.out.println("cost = " + String.valueOf(System.currentTimeMillis() - i));
			// 必须释放资源否则出错
			serviceClient.cleanupTransport();
		} catch (AxisFault e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
//		// 下面是调用getPrice方法的代码,这些代码与调用getGreeting方法的代码类似
//		classes = new Class[] { int.class };
//		opAddEntry = new QName("http://ws.apache.org/axis2", "getPrice");
//		System.out.println(serviceClient.invokeBlocking(opAddEntry,
//				new Object[] {}, classes)[0]);
	}
	
	public static void main(String[] args) throws Exception {
		RPCClient.demo();
	}
}
 

 

分享到:
评论

相关推荐

    WebServices服务接口调用---基于rpc方式应用

    本主题将深入探讨基于RPC(Remote Procedure Call)方式的WebServices应用,特别是使用sun-jaxws.xml配置文件的方法。 RPC是一种使客户端能够执行远程服务器上的方法的技术,它隐藏了底层的网络通信细节,使得调用...

    Delphi调用WebService的实例(非常经典)[参考].pdf

    "Delphi调用WebService的实例(非常经典)" 在 Delphi 中调用 WebService 是一种非常经典的实例。下面我们将详细介绍 Delphi 调用 WebService 的相关知识点。 首先, Delphi 调用 WebService 需要了解基本概念。...

    axis2客户端调用axis1服务接口

    axis2客户端调用axis1服务接口 调用方式 使用RPC方式调用WebService,为了防止冲突可以增加 // 与weblogic的lib冲突配置 System.setProperty("javax.xml.stream.XMLInputFactory", ...

    webservice服务发布编写

    使用RPC方式调用WebService(有返回结果) /** * 构造方法, 指定IP、端口号,在调用方法时可不指定 * @param server 服务器IP地址 * @param port 端口号 * @param path WebService访问路径 * @param namespace ...

    java 调用 webService工具类

    Java开发者通常会根据WSDL文件生成客户端代码,然后使用这些代码来调用WebService。JAX-WS提供`wsimport`工具,可以自动生成对应的客户端 stub 类。 5. **工具类设计**: 这个名为`javaCallwebService`的工具类很...

    webservice接口调用工具类依赖jar包

    WebService接口调用工具类是Java开发中常见的一种技术,用于与远程服务进行通信,尤其在集成不同系统或服务时非常关键。在这个场景中,"webservice接口...理解并正确使用这些jar包是成功调用WebService接口的关键步骤。

    使用spring远程调用服务端接口实现WebService功能

    在Java EE平台上,Spring框架提供了一种强大的方式来实现远程服务调用,特别是通过其HttpInvokerServiceExporter组件来实现基于HTTP的WebService功能。这个技术允许客户端和服务端通过HTTP协议进行通信,实现远程...

    Java调用WebService接口的方法

    本文将深入探讨如何使用Java调用WebService接口,以实例分析有参方法Add的使用技巧。 首先,我们需要了解WebService的基础知识。WebService是一种基于开放标准(如SOAP、WSDL和UDDI)的Web应用程序,它能够通过HTTP...

    axis客户端调用webservice

    java axis客户端调用webservice,可应用于ofbiz框架。 解决网络上共享代码两次调用后会出现timeout的BUG

    java调用webservice接口.zip

    本教程将深入探讨如何使用Axis库来实现在Java中调用WebService接口。Axis是一个开源的Java SOAP栈,它提供了从Java代码中创建和消费Web服务的能力。 **一、什么是WebService?** WebService是一种基于XML的协议,它...

    xfire调用webservice

    xfire调用webservice xfire是一款基于Java的开源WebService框架,它提供了一个简单、灵活和高效的方式来开发和部署WebService。xfire可以与多种类型的WebService结合使用,如SOAP、REST、XML-RPC等。xfire还提供了...

    利用AXIS调用webservice所需JAR包

    本篇文章将深入探讨如何利用AXIS调用WebService,以及所需的JAR包及其作用。 首先,理解AXIS的基本概念至关重要。Apache Axis是Apache软件基金会开发的一个开源项目,它是一个用于构建Web服务和客户端的工具集。...

    JAVA调用WebService所需要的JAR

    要使用Java来调用WebService,开发者需要引入特定的JAR(Java Archive)文件来支持相关功能。以下将详细介绍Java调用WebService所需的关键JAR文件以及相关的知识点。 1. **SOAP协议**:Java调用WebService通常采用...

    myeclipse下java调用webservice项目例子

    【标题】"myeclipse下java调用webservice项目例子"涉及到的是在Java开发环境中,使用MyEclipse IDE来创建并调用Web服务的过程。MyEclipse是Eclipse的一个扩展,特别适合Java企业级应用的开发,包括Web服务。本项目...

    详解axis调用webservice实例

    标题中的“详解axis调用webservice实例”表明我们将探讨如何使用Apache Axis库来调用Web服务。Apache Axis是一个开源工具,它允许Java开发者创建、部署和使用Web服务。在这个实例中,我们会有机会看到实际的Java代码...

    Flex调用Webservice及java程序

    2. **调用Webservice** - **通过SOAP**:在Flex中,我们可以使用`mx.rpc.soap.*`包中的类来创建SOAP客户端,如`WebService`类。首先,我们需要定义一个接口,该接口对应于Web服务的WSDL(Web服务描述语言)文档中的...

    java调用webservice(20211103125800).rar

    Java调用WebService是一种常见的在Java应用中集成外部服务或系统的方式。WebService是一种基于XML的、平台和语言无关的标准,允许不同系统之间的数据交换。在这个场景中,我们将深入探讨Java如何利用各种技术栈来...

    JAVA调JAVA调用webservice(axis方式).doc 用webservice(axis方式).doc

    通过上述步骤,我们了解了如何使用Apache Axis在Java中调用WebService。这种技术在企业级应用中极为常见,特别是在微服务架构下,服务间的交互依赖于这类远程调用机制。掌握这一技能对于Java开发者来说至关重要,...

    Java调用webService应用.pdf

    Java环境下调用WebService方式的主要优点包括以下几点: 1. 跨防火墙通信:由于系统用户众多,分布于不同地域,客户端和服务器端之间通常会有防火墙或者代理服务器,这就使得通信变得棘手。通过使用WebService,...

Global site tag (gtag.js) - Google Analytics