`

Java调用Web服务(Web Services),如此简单

阅读更多


实在不才啊,今天才发现jdk6里有个wsimport.exe,使用可以生成目标Web服务器的本地调用类,然后就可以在本地程序中像使用本地代码一样调用WebService了,如此一来和DotNet下的Web服务的使用方法就基本一样。(活到老学到老啊

使用方法如下:

1、执行wsimport命令:

wsimport http://localhost:9999/AccountService?WSDL

 2、将生成的代码进行打包:

jar cvf com.zywang.cxf.jar com/zywang/cxf/

 3、将生成的jar包添加到项目的构建路径中,进行引用,从使用的情况看Java的Web服务和DotNet的稍有不同

 

我分别使用DotNet、Spring和CXF创建了三个相同功能的Web服务,以下是客户端代码片段

访问DotNet的Web服务:

/**
 * @author ZYWANG 2011-4-19
 */
public static void main(String[] args) {
	AccountService service = new AccountService();
	AccountServiceSoap serviceSoap = service.getAccountServiceSoap();
	Account account = new Account();
	account.setName("Hello ZYWANG " + (new Date()));
	serviceSoap.insertAccount(account);
	ArrayOfAccount arrayOfAccount = serviceSoap.getAccounts();
	List<Account> accounts = arrayOfAccount.getAccount();
	for (Account a : accounts) {
		System.out.println(a.getName());
	}
}

访问Spring的Web服务:

/**
 * @author ZYWANG 2011-4-19
 */
public static void main(String[] args) {
	AccountService_Service service = new AccountService_Service();
	AccountService accountService = service.getAccountServicePort();
	Account account = new Account();
	account.setName("王朝阳 by WS " + new Date());
	accountService.insertAccount(account);
	List<Account> accounts = accountService.getAccounts("");
	for (Account account2 : accounts) {
		System.out.println(account2.getName());
	}
}

访问CXF的Web服务:

/**
 * @author ZYWANG 2011-4-19
 */
public static void main(String[] args) {
	AccountDao_Service service = new AccountDao_Service();
	AccountDao accountService = service.getAccountDaoPort();
	Account account = new Account();
	account.setName("Hello 王朝阳 by CXF " + (new Date()));
	accountService.insertAccount(account);
	List<Account> list = accountService.getAccounts("");
	for (Account a : list) {
		System.out.println(a.getName());
	}
}

 

因为主要是使用wsimport和jar这两个命令,所以写了个小工具来自动生成jar包,在附件中(源码可以反编译得到)

附件中还有三种Web服务的程序,供需要的朋友参考。

工具运行截图:


 
 

  • 大小: 53 KB
0
4
分享到:
评论

相关推荐

    java调用exchange web services

    Java调用Exchange Web Services(EWS)是一种常见的技术实践,用于与Microsoft Exchange Server进行交互,进行邮件发送、日历管理、联系人同步等任务。EWS是Exchange Server提供的一组基于SOAP协议的Web服务接口,...

    Java与.NET 的Web Services相互调用

    1. **Java调用.NET Web Services** 在Java中调用.NET Web Services主要依赖于SOAP(简单对象访问协议)和WSDL(Web服务描述语言)。首先,你需要生成一个Java Web Service,这可以通过JBuilder完成。在JBuilder中...

    java调用webservices

    通过上述代码分析,我们可以了解到使用Java调用Web服务的具体实现方式,包括基于Apache Axis的SOAP Web Service调用和使用SOAP协议直接构建调用的过程。这对于Java开发者来说是非常实用的知识点,可以帮助他们在实际...

    Java 调用.NET web服务

    总结,Java调用.NET Web服务的过程主要包括理解WSDL,使用JAX-WS生成Java客户端代码,构建并运行客户端,处理异常,以及可能的性能优化和安全措施。在实际开发中,还需要关注兼容性、版本管理和文档记录等方面,确保...

    Java+Axis2调用Web Services 网络接口

    要在Java中使用Axis2调用Web服务,首先需要在项目中添加Axis2的依赖库。这可以通过Maven或者直接下载jar包到项目的类路径中实现。然后,使用wsimport工具生成客户端 stubs,这些stubs将根据WSDL文件自动创建客户端...

    java6 纯发布WebServices及客户端调用

    在客户端调用Web服务时,我们通常会使用服务代理,这是由JAX-WS自动生成的Java类。我们可以像调用本地方法一样调用Web服务的方法。例如: ```java Service service = Service.create(new URL(...

    用java调用webservices的三种方式

    ### 用Java调用WebServices的三种方式 随着互联网技术的发展与成熟,WebServices作为一种标准的、跨平台的、基于XML的信息交换模式被广泛应用。在Java领域,调用WebServices通常涉及遵循一定的技术规范和标准。本文...

    Java调用.net webservices实例

    本教程将通过一个具体的实例,讲解如何使用Java调用.NET Webservices,帮助初学者理解和掌握这两种技术的结合使用。 首先,理解Web Services的基本概念至关重要。Web Services是一种基于网络的、标准化的模块化应用...

    .NET调用JAVA web 服务

    在.NET开发环境中,有时我们需要与Java Web服务进行交互,实现跨平台的数据交换和功能调用。这涉及到一种称为“互操作性”(Interoperability)的技术,它允许不同编程语言和平台之间的通信。本文将详细讲解如何在...

    JAVA调用天气预报WEB服务实例

    Java作为多平台编程的强大工具,提供了丰富的API和库来调用Web服务。本实例将聚焦于如何使用Java调用天气预报的Web服务,通过分析提供的文件`WeatherUtil.java`,我们可以学习到如何与`webxml.com.cn`的天气预报Web ...

    java webservices例子,java webservices,webservices

    在MyEclipse中,我们可以利用WSDL文件生成客户端代理类,这使得调用Web服务就像调用本地方法一样简单。客户端代码会使用`javax.xml.ws.Service`类来实例化一个服务代理,然后通过代理对象调用服务端的方法。 **7. ...

    Java调用C#安全认证的Web服务

    跨语言调用Web服务时,可能遇到类型映射、序列化和反序列化等问题。Java和C#有不同的数据类型,需要确保它们之间的兼容性。此外,安全设置的匹配也至关重要,比如加密算法和证书的使用。 7. **调试与测试**: ...

    java web services教程

    Java Web Services 是一种利用 Java 技术开发网络服务的方式,它使得不同系统之间能够通过互联网进行数据交换和功能调用。这个教程将深入讲解 Java Web Services 的核心概念和技术,帮助开发者理解如何创建、部署和...

    java调用.net发布的webservice(asmx)

    这将生成一个服务接口和服务实现类,其中包含了调用Web服务的方法。 3. 编写Java代码:实例化生成的服务实现类,调用其方法发起Web服务请求。注意设置SOAPAction头,因为这是.NET ASMX Web服务识别操作的关键。如果...

    实现webServices接口调用demo

    2. 调用服务:通过代理对象调用Web服务方法。 ```java String response = myWebService.sayHello("World"); System.out.println(response); ``` 六、内部与外部访问 - 内部访问:通常是指在同一应用内或者在同一台...

Global site tag (gtag.js) - Google Analytics