CXF
与
spring
集成
1
.
新建
web
project ,
并加入
a
pache-cxf-2.0.7/lib
所有包
,编写要发布的
web service
接口和实现
.
这一步,与前面一样。
import javax.jws.WebService;
@WebService
public interface HelloWorld {
public String sayHello(String text);
}
import javax.jws.WebService;
@WebService(endpointInterface="test.HelloWorld")
public class HelloWorldImpl implements HelloWorld {
public String sayHello(String text) {
return "Hello" + text ;
}
}
@WebService
注解表示是要发布的
web
服务
2.
在
spring-cxf.xml
配置发布的
web service
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
<
beans
xmlns
=
"http://www.springframework.org/schema/beans"
xmlns:xsi
=
"http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxws
=
"http://cxf.apache.org/jaxws"
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"
>
<
import
resource
=
"classpath:META-INF/cxf/cxf.xml"
/>
<
import
resource
=
"classpath:META-INF/cxf/cxf-extension-soap.xml"
/>
<
import
resource
=
"classpath:META-INF/cxf/cxf-servlet.xml"
/>
<
bean
id
=
"hello"
class
=
"test.HelloWorldImpl"
/>
<
jaxws:endpoint
id
=
"helloWorld"
implementor
=
"#hello"
address
=
"/HelloWorld"
/>
</
beans
>
注意:
<
jaxws:endpoint
id
=
"helloWorld"
implementor
=
"#hello"
address
=
"/HelloWorld"
/>
id
:指在
spring
配置的
bean
的
ID.
Implementor:
指明具体的实现类
.
Address:
指明这个
web service
的相对地址,
3.
配置
web.xml
文件:
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
<
web-app
version
=
"2.4"
xmlns
=
"http://java.sun.com/xml/ns/j2ee"
xmlns:xsi
=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation
=
"http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
>
<
context-param
>
<
param-name
>
contextConfigLocation
</
param-name
>
<
param-value
>
classpath:spring-cxf.xml
</
param-value
>
</
context-param
>
<
listener
>
<
listener-class
>
org.springframework.web.context.ContextLoaderListener
</
listener-class
>
</
listener
>
<
servlet
>
<
servlet-name
>
CXFServlet
</
servlet-name
>
<
servlet-class
>
org.apache.cxf.transport.servlet.CXFServlet
</
servlet-class
>
<
load-on-startup
>
1
</
load-on-startup
>
</
servlet
>
<
servlet-mapping
>
<
servlet-name
>
CXFServlet
</
servlet-name
>
<
url-pattern
>
/ws/*
</
url-pattern
>
</
servlet-mapping
>
</
web-app
>
4
.
部署到
tomcat
服务器
,
输入
:http://localhost:8080/<web-app-name>/
HelloWorld?wsdl,
将显示这个
web service
的
wsdl.
注意:如果web.xml
配置
<
servlet-name
>
CXFServlet
</
servlet-name
>
<
url-pattern
>
/ws/*
</
url-pattern
>
则访问地址为:
http://localhost:8080/<web-app-name>/ws/
HelloWorld?wsdl
5.
下面就开始创建一个客户端程序,访问这个web service,
同样新建
java project ,
并加入
a
pache-cxf-2.0.7/lib
所有包
.
创建与具体webservice
技术无关的业务接口HelloWorld.java
public interface HelloWorld {
public String sayHello(String text);
}
6.
配置
spring-client.xml
<
beans
xmlns
=
"http://www.springframework.org/schema/beans"
xmlns:xsi
=
"http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxws
=
"http://cxf.apache.org/jaxws"
xsi:schemaLocation
=
"
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://cxf.apache.org/jaxws http://cxf.apache.org/schema/jaxws.xsd"
>
<
bean
id
=
"client"
class
=
"test.HelloWorld"
factory-bean
=
"clientFactory"
factory-method
=
"create"
/>
<
bean
id
=
"clientFactory"
class
=
"org.apache.cxf.jaxws.JaxWsProxyFactoryBean"
>
<
property
name
=
"serviceClass"
value
=
"test.HelloWorld"
/>
<
property
name
=
"address"
value
=
"http://localhost:9000/helloWorld"
/>
<!--
这个地方的地址一定要注意,正确的
-->
</
bean
>
</
beans
>
7
.测试:
import
org.springframework.context.ApplicationContext;
import
org.springframework.context.support.ClassPathXmlApplicationContext;
import
test.HelloWorld;
public
class
Test {
public
static
void
main(String[] args) {
ApplicationContext ctx =
new
ClassPathXmlApplicationContext(
"spring-client.xml"
);
HelloWorld client = (HelloWorld) ctx.getBean(
"client"
);
String result = client.sayHello(
"
你好
!"
);
System.
out
.println(result);
}
}
分享到:
相关推荐
【标题】"Spring+CXF 开发Web Service" 在Java世界中,开发Web服务的一个常见选择是使用Spring框架结合Apache CXF。Spring作为一个强大的轻量级框架,提供了丰富的功能,包括依赖注入、AOP(面向切面编程)以及企业...
第一天: 什么是webservice? 从案例(便民查询网站)分析如何实现?...CXF开发webservice: CXF入门程序 Spring+cxf整合(重点) CXF发布rest的webservice。(重点) 综合案例: 实现便民查询网站
Spring框架是Java企业级应用开发的首选,而CXF是一个强大的开源服务框架,支持创建和消费Web服务。本教程将深入探讨如何利用Spring和CXF来实现基于HTTP和HTTPS的Web服务,并且将涉及到HTTPS的证书配置。 1. **...
通过"使用CXF开发WebService.doc"文档,你将能更深入地了解如何具体操作这些步骤,包括详细的XML配置和代码示例。而"cxf-ws"可能是一个包含CXF相关配置和样例代码的文件夹,帮助你更好地理解和实践。 总结来说,...
在开发基于Java的Web服务时,Spring和Apache CXF是一个常见的组合。Spring作为一个灵活的框架,可以轻松地与CXF集成,提供强大的服务治理和依赖注入功能。Apache CXF则是一个开源的服务框架,用于创建和消费Web服务...
在IT行业中,Spring框架和Apache CXF是两个非常重要的组件,它们在开发Web服务时扮演着关键角色。本文将深入探讨如何使用Spring和CXF来发布WebService服务。 首先,Spring是一个开源的Java平台,它提供了全面的编程...
使用 CXF 做 webservice 简单例子 Apache CXF 是一个开放源代码框架,提供了用于方便地构建和开发 Web 服务的可靠基础架构。它允许创建高性能和可扩展的服务,您可以将这样的服务部署在 Tomcat 和基于 Spring 的轻...
本教程将基于"Spring+CXF开发WebService源代码"的主题,深入探讨如何利用这两者创建和消费Web服务。 首先,Spring是一个开源的应用框架,提供了一个全面的编程和配置模型,适用于Java应用程序。它为开发企业级应用...
Spring + cxf = webservice 完整实例源码免费下载 完全免费。此资源仅为文档提供。 版权为百度文档 "Spring + cxf = webservice 完整实例源码免费下载" 所有。
Spring是一个全面的后端开发框架,提供了依赖注入、AOP(面向切面编程)等功能,而CXF则是一个用于构建和消费Web服务的开源框架。当我们将两者结合时,可以利用Spring的管理能力来轻松地集成和部署CXF Web服务。下面...
这个标题“cxf开发webservice所用jar包”表明我们正在讨论一组CXF框架所需的JAR文件,这些文件对于利用CXF开发基于Web服务的应用程序至关重要。在描述中提到“cxf-2.4.1整合spring3.0所用jar包”,这暗示了我们使用...
Code-First方法是JAVA平台下的WebService开发的常见方法。 CXF 开发实践 CXF的安装方法是将其包文件复制到目标系统的CLASSPATH文件夹中。CXF依赖于许多Java类库,如Spring、WSDL4J等。开发服务时,需要设计好业务...
本教程将深入探讨如何利用Apache CXF 2与Spring 2.5来构建和使用WebService。 首先,让我们理解这两个组件的基本概念。Apache CXF是一个全面的服务框架,它支持多种Web服务规范,如SOAP、RESTful、WS-*等。它提供了...
Web项目中基于Maven与Spring整合的WebService之cxf的实现⬇️ 详情请参考如下链接: https://locqi.github.io/locqi.com/2018/09/05/Eclipse+Maven+Spring+CXF-create-WebService/
### CXF 开发 WebService 服务端详解 #### 一、引言 随着企业级应用对服务化的不断追求,Web Service 成为了实现不同系统间通信的重要手段之一。Apache CXF 是一个高性能、易于使用的框架,它支持多种协议,如SOAP...
在使用Spring和Apache CXF开发Web服务时,我们可以利用CXF提供的强大功能,与Spring框架进行无缝集成。CXF允许开发者通过注解和Spring配置文件来轻松地暴露和消费Web服务。以下是关于如何使用这些技术的一些关键知识...
【标题】"mybatis+spring+cxf Webservice框架"是一个集成性的开发框架,它结合了三个主流的技术组件:MyBatis、Spring和Apache CXF,用于构建高效、灵活且易于维护的Web服务。MyBatis是一个优秀的持久层框架,Spring...
在本文中,我们将深入探讨如何使用Apache CXF 2与Spring 2.5框架来开发Web服务实例。Apache CXF是一个流行的开源项目,它提供了一种简单且强大的方式来实现和消费SOAP和RESTful Web服务。Spring框架则以其模块化、...
将CXF与Spring整合,可以实现更高效、灵活的服务开发。下面我们将详细探讨在CXF开发Web服务并与Spring整合时,这些特定jar包的作用。 1. **cxf-2.7.1.jar**:这是CXF的核心库,包含了处理Web服务请求和响应的基本...
在开发Web服务时,Apache CXF是一个非常强大的框架,它提供了与Spring的紧密集成,使得开发者可以方便地通过注解和Spring配置来暴露和消费Web服务。本篇内容将深入探讨如何使用CXF和Spring来创建和使用Web服务。 ...