开发工具准备:
1.apache-cxf-2.2.6.zip
2.spring-ws-1.5.8.zip
3.eclipse-jee-galileo-SR1-win32
开发步骤:
一、新建一个普通的java工程,名字叫WebService_CXF_Client
二、导入apache-cxf-2.2.6 及 spring-ws-1.5.8 下的jar包
三、启动《CXF开发WebService服务器端》所开发的WebService服务器
四、进入apache-cxf-2.2.6/bin文件夹内,运行
wsdl2java.bat http://localhost:8080/WebService_CXF_Host/service/HelloWorld?wsdl
将会在bin文件夹内生成一个demo文件夹
注意,可以查看demo.sprint文件夹内的HelloWorld.java接口,定义的aryMyObjects方法的返回值是List<MyObject>类型,尽管在服务器端定义接口的返回值类型是数组.
五、将整个demo文件夹剪切到WebService_CXF_Client工程的src目录下
六、在src目录下新建一个client-beans.xml文件,内容如下:
<?xmlversion="1.0"encoding="UTF-8"?>
<beansxmlns="http://www.springframework.org/schema/beans"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">
<beanid="client"class="demo.spring.HelloWorld"
factory-bean="clientFactory"factory-method="create"/>
<beanid="clientFactory"class="org.apache.cxf.jaxws.JaxWsProxyFactoryBean">
<propertyname="serviceClass"value="demo.spring.HelloWorld"/>
<propertyname="address"value="http://localhost:8080/WebService_CXF_Host/service/HelloWorld"/>
</bean>
<jaxws:clientid="client2"
serviceClass="demo.spring.HelloWorld"
address="http://localhost:8080/WebService_CXF_Host/service/HelloWorld"/>
</beans>
注意:client 与 client2 是两种访问webservice的写法,效果一样。
七、新建含main方法的Client.java类,内容中下:
import java.util.ArrayList;
import java.util.List;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import demo.spring.HelloWorld;
import demo.spring.MyObject;
public final class Client {
private Client() {
}
public static void main(String args[]) throws Exception {
// START SNIPPET: client
ClassPathXmlApplicationContext context
= new ClassPathXmlApplicationContext(new String[] {"client-beans.xml"});
HelloWorld client = (HelloWorld)context.getBean("client2");
System.out.println("begin stringInt method");
int num=999;
String text="i love you";
String response = client.stringInt(text, num);
System.out.println("Response: " + response);
System.out.println("begin aryMyObjects method");
List<MyObject> lstSource=new ArrayList<MyObject>();
MyObject myObject1=new MyObject();
myObject1.setId(0);
myObject1.setName("000");
MyObject myObject2=new MyObject();
myObject2.setId(1);
myObject2.setName("111");
lstSource.add(myObject1);
lstSource.add(myObject2);
List<MyObject> lstResponse=client.aryMyObjects(lstSource);
for(int i=0;i<lstResponse.size();i++){
System.out.println("id: "+lstResponse.get(i).getId()+" name: "+lstResponse.get(i).getName());
}
System.exit(0);
}
}
至此,客户端也成功开发了
相关推荐
总结,利用CXF开发Web服务客户端涉及了从生成客户端代码、创建实例到测试的整个流程。了解这些知识点,能够帮助我们更高效地构建和测试与Web服务交互的应用程序。在实际项目中,还需要根据具体需求进行相应的调整和...
在IT行业中,开发CXF Java客户端是一项常见的任务,特别是在构建基于Web服务的应用程序时。CXF是一个开源框架,它提供了创建和消费SOAP和RESTful Web服务的能力。本篇将深入探讨如何利用CXF来开发Java客户端,同时也...
2.用cxf开发webservice 3.这个服务端和客户端的小demo 在服务端 对外开放接口服务,然后在客户端 调用服务端的方法, 实现客户端(一个javaweb项目)对服务端(javaweb项目)方法的调用, 实际上就是发送和接收消息...
Apache CXF是一个开源服务框架,它允许开发人员通过SOAP、RESTful、XML/HTTP等多种协议创建Web服务和客户端。下面,我们将深入探讨这些必要的JAR文件及其在CXF客户端中的作用。 1. `cxf-core-3.1.1.jar`:这是CXF的...
通过分析这个示例,你可以学习到CXF动态客户端的实现方式,这对于开发与各种Web服务交互的应用程序非常有帮助。 总的来说,CXF动态webservice客户端的优势在于它的灵活性和便利性。它减少了对预编译客户端代码的...
在Java开发中,CXF和Axis是两种广泛使用的Web服务框架。CXF主要用来创建和消费SOAP和RESTful Web服务,而Axis则是Apache组织早期推出的一款Web服务框架,主要用于SOAP服务。本文将深入探讨如何使用CXF客户端调用Axis...
总结,使用CXF开发WebService客户端是Java开发者常用的一种方式,它简化了客户端的构建过程,提供了丰富的功能和良好的扩展性。通过理解WSDL、生成客户端代码、配置服务地址以及利用CXF的高级特性,可以高效地完成与...
CXF框架是Apache组织开发的一款开源的Web服务框架,它支持SOAP、RESTful等多种Web服务标准,同时也提供了客户端和服务端的实现。在使用CXF框架进行Web服务客户端调用时,需要依赖一系列的JAR包来确保功能的正常运行...
下面我们将深入探讨"webservice CXF 服务端客户端传递参数的例子demo"。 1. **CXF框架介绍** CXF是一个Java框架,它允许开发者通过简单的API来创建和使用Web服务。CXF支持多种Web服务标准,如WS-I Basic Profile、...
CXF客户端是开发人员用来与CXF服务交互的重要组件,它允许我们轻松地调用远程Web服务。然而,为了减小程序的体积和依赖性,有时我们需要精简CXF客户端所依赖的jar包。本文将深入探讨如何配置和使用CXF客户端所需的...
总的来说,Apache CXF通过提供这些关键组件,简化了Web服务客户端的开发过程,使得开发者能够更专注于业务逻辑,而不是底层通信细节。这些核心JAR文件是构建高效、可靠的CXF客户端的基础,对于任何涉及Web服务调用的...
本篇文章将深入探讨如何使用CXF作为客户端框架,通过MyEclipse集成开发环境自动生成Web服务客户端。 首先,我们要理解CXF的基本概念。CXF,全称“CXF:Confusing eXtensible Framework”,它提供了多种方式来创建...
【标题】"cxf3.0.2 客户端完整jar包" 是Apache CXF框架的一个特定版本,专门用于构建客户端应用程序。CXF是一个开源服务框架,它允许开发人员创建和消费Web服务,同时也支持Java EE和Java SE环境。这个版本3.0.2包含...
cxf开发webservice客户端和服务器端 cxf(Apache CXF)是一款开源的WebService框架,用于开发webservice客户端和服务器端。它提供了许多有用的功能,如自动生成服务桩、客户调用桩和WSDL文档等,使得开发webservice...
"CXF3.1.11客户端jar包.rar"是CXF框架的一个版本3.1.11的客户端组件集合,它包含了一系列必要的jar文件,使得开发者能够快速搭建和使用CXF进行Web服务的开发。 在Web服务开发中,CXF提供了两种主要的客户端API:...
总之,Apache CXF 3.1.11客户端精简jar包集合是一个精心挑选的组件集,旨在满足基本的Web服务客户端开发需求,同时保持代码的简洁和高效。在开发过程中,可以根据项目特性和需求,灵活地选用这些jar包,以达到最佳的...
总结来说,使用Apache CXF开发Webservice客户端涉及从获取WSDL、生成客户端代码、配置服务代理到实际调用服务的多个步骤。理解这些步骤以及CXF的特性,将有助于你高效地创建和维护Web服务客户端。
在本案例中,"CXF3.1.11客户端最简jar包集合"是指一个特定版本的CXF库,即3.1.11,针对客户端使用的精简版。 这个集合包含19个jar包,这些jar包通常包含了CXF客户端运行所需的最小依赖集。以下是一些可能包含的重要...
CXF不仅简化了Web服务的开发,而且允许开发者无缝地在客户端和服务端之间切换,从而实现双向通信。 **1. CXF入门** 对于初学者,了解CXF的基本概念是至关重要的。CXF基于JAX-WS(Java API for XML Web Services)...
使用命令行,开发者只需指定WSDL文件的位置和一些选项,CXF就会自动创建所需的客户端类和接口,大大简化了客户端的开发工作。 例如,生成客户端的基本命令可能如下: ``` java -jar cxf-codegen-plugin.jar wsdl2...