CXF(http://cxf.apache.org/)和Spring(http://cxf.apache.org/)无缝集成的Web Service开发框架。CXF目前是APACHE的孵化项目,也是目前JAVA领域十分热门和有前途的Web Service开发框架。最近在一个研发项目中需要提供Web Service服务,调用方是.NET开发的系统。通过分析选择,最终决定采用CXF来做。
CXF、SPRING和HIBERNATE版本更新都比较快,把几个东西搁一块就会出现些不兼容的问题。我将最新的CXF 2.1和Spring 2.5 和 Hibernate 3.2放到一起,系统启动时报“Unsatisfied dependency expressed through constructor argument with index 2 of type [org.apache.cxf.jaxws.JaxWsServerFactoryBean]:” …的错误。在cxf的mail-list 和 CXF-ZH(http://groups.google.com/group/cxf-zh) 没找到合适解答。经过一番分析测试,现将解决上述问题的方案提供给大家:
1、CXF 下载最新的 CXF 2.1.1(http://people.apache.org/repo/m2-snapshot-repository/org/apache/cxf/apache-cxf/2.1.1-SNAPSHOT/
)
2、在lib下应该使用如下版本的类库文件
cxf-2.1.1-SNAPSHOT.jar
asm-2.2.3.jar(在Spring 2.5里,替换掉hibernate3.2里自带的)
hibernate3.2.6.jar
cglib-nodep-2.1_3.jar(去掉老的cglib)
spring-core.jar
spring-web.jar
spring-webmvc.jar
hibernate-annotations.jar
hibernate-commons-annotations.jar
cxf 2.1.1相关的类库
commons-logging-1.1.jar
geronimo-activation_1.1_spec-1.0.2.jar
geronimo-annotation_1.0_spec-1.1.1jar
geronimo-javamail_1.4_spec-1.3.jar
geronimo-servlet_2.5_spec-1.2.jar (or Sun's Servlet jar)
geronimo-stax-api_1.0_spec-1.0.1.jar
geronimo-ws-metadata_2.0_spec-1.1.2.jar (JSR 181)
jaxb-api-2.1.jar
jaxb-impl-2.1.6.jar
jaxws-api-2.1-1.jar
neethi-2.0.4.jar
saaj-api-1.3.jar
saaj-impl-1.3.jar
wsdl4j-1.6.1.jar
wstx-asl-3.2.4.jar
XmlSchema-1.4.2.jar
xml-resolver-1.2.jar
3、编写spring的配置文件时应该注意采用如下结构形式(helloWorld.xml)
<?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:context="http://www.springframework.org/schema/context"
xmlns:cxf="http://cxf.apache.org/core"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://cxf.apache.org/core
http://cxf.apache.org/schemas/core.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="helloWorldImpl" class="lee.ws.HelloWorldImpl" />
<jaxws:endpoint id="helloWorld" implementor="#helloWorldImpl" implementorClass="lee.ws.HelloWorldImpl" address="/HelloWorld">
<jaxws:serviceFactory>
<bean
class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean">
<property name="wrapped" value="true" />
</bean>
</jaxws:serviceFactory>
</jaxws:endpoint>
</beans>
OK,希望这篇文章对大家有所帮助.
分享到:
相关推荐
总结来说,Apache CXF 2与Spring 2.5的集成使得Web服务的开发变得更加便捷和灵活。通过Spring的配置,我们可以方便地管理服务的生命周期,同时利用CXF的强大功能来处理各种Web服务协议。这不仅提高了开发效率,也...
在本文中,我们将深入探讨如何使用Apache CXF 2与Spring 2.5框架来开发Web服务实例。Apache CXF是一个流行的开源项目,它提供了一种简单且强大的方式来实现和消费SOAP和RESTful Web服务。Spring框架则以其模块化、...
【标题】"cxf+Spring2.5" 指的是使用Apache CXF框架与Spring 2.5版本进行集成的示例项目。Apache CXF是一个开源服务框架,它允许开发人员创建和消费Web服务,而Spring框架则是一个广泛使用的Java企业级应用的IOC...
标题中的"FLEX4+Gilead+BlazeDS+pureMVC+spring2.5 MVC+hibernate3.3+SLF4J+CXF2.3.0"涉及了多个关键技术和框架,这些都是在构建分布式、企业级Web应用程序时常用的技术组件。下面将逐一解析这些技术的核心概念和...
【标题】"CXF2.1.3+spring3.0+struts2.3.4" 描述了集成这三大框架实现Web服务的场景。CXF是一个开源的服务框架,它允许开发人员创建和消费各种Web服务。Spring是Java企业级应用的核心框架,提供了依赖注入和面向切面...
标题中的"CXF3.0+Spring3.2 WSSecurity"指的是使用Apache CXF 3.0版本与Spring 3.2版本结合实现WSSecurity(Web Services Security)的示例或教程。WSSecurity是WS-I(Web Services Interoperability Organization)...
标题中的"CXF2.7+SPRING3.0.5+HIBERNATE3.6final+STRUTS2"代表了一个集成开发环境,其中包含了四个关键的技术框架:Apache CXF 2.7、Spring 3.0.5、Hibernate 3.6 Final以及Struts2。这些框架在Java Web开发中起着...
总的来说,"cxf2.7+spring4"整合涉及到的主要知识点包括:Apache CXF的Web服务创建和发布、Spring的依赖注入、Spring与CXF的协同配置、以及注解驱动的开发模式。这样的整合有助于简化Web服务的开发和管理,使得在...
CXF Restful + Spring3 + Mybatis 后台开发环境搭建
在开发过程中,我们需要确保 CXF 客户端能够正确地与服务端通信,这可能涉及到对WSDL(Web服务描述语言)文件的理解和处理。同时,为了调试和优化,我们需要关注性能指标,如请求延迟、错误处理和异常报告。最后,...
该整合包是我做的视频系统,资源管理系统,及考场系统项目中lib里打包出来的,应用中还有别的包我给选出来了,由于整个整合包太大,我只抽取了ssh2的相关包打包发布...我这里有包括jsf,jms,cxf,mail,融合一起的包。
1. **csh框架**:通常指的是Struts(Spring、Hibernate)三位一体的Java Web开发框架,它们分别是用于MVC(Model-View-Controller)模式的Struts、提供依赖注入和AOP(面向切面编程)的Spring以及持久层管理的...
【CXF3.0+Spring3.2 RESTFul服务(下)】 在现代Web服务开发中,RESTful API已经成为主流,它通过HTTP协议提供简洁、无状态的接口,易于客户端调用。CXF,一个强大的开源服务框架,支持SOAP和RESTful服务,而Spring...
简单的webservice+Cxf+Spring数据对接实例以及jar.rar简单的webservice+Cxf+Spring数据对接实例以及jar.rar简单的webservice+Cxf+Spring数据对接实例以及jar.rar简单的webservice+Cxf+Spring数据对接实例以及jar.rar...
在本教程中,我们将深入探讨如何使用Apache CXF 3.0与Spring 3.2框架构建一个简单的"Hello World" Web服务实例。这个过程涵盖了关键的技术组件、配置步骤以及可能遇到的问题解决策略。 首先,Apache CXF是一个开源...
标题 "CXF2.6.4+Spring3.1.1+Jetty7.5.4" 提到的是一个基于开源技术栈构建的Web服务解决方案。这个组合涉及到三个关键组件:Apache CXF 2.6.4、Spring Framework 3.1.1 和 Jetty 7.5.4。接下来,我们将深入探讨这三...
2. **CXF的Spring支持**:CXF提供了对Spring的深度集成,可以通过Spring的XML配置或注解来定义和管理Web服务。例如,使用`<jaxws:endpoint>`标签创建一个基于JAX-WS的服务端点,或者使用`<jaxrs:server>`创建基于JAX...
【标题】"cxf+spring+hibernate整合添加功能实现修改版"涉及的是一个集成开发环境中的核心技术栈,即Apache CXF、Spring框架和Hibernate ORM的整合应用,旨在实现服务添加功能的优化。Apache CXF是一个开源的WS-*...
这可能包括了服务接口定义(如Java类或者WSDL文件)、服务实现类(处理业务逻辑)以及CXF配置文件,用于设置服务的端点地址、绑定、数据格式等。 综上所述,"cxfserver+spring+mybatis"项目整合了三个关键组件来...