使用MyEclipse、Spring 2.0、XFire和tomcat 5或6开发WebService 时,初始化Spring对象时抛出以下异常:
Error initializing XFireServlet.
java.lang.IllegalStateException: Could not find valid implementation for: 2.0
at org.apache.xbean.spring.context.impl.XBeanHelper.createBeanDefinitionReader(XBeanHelper.java:48)
at org.codehaus.xfire.spring.XFireConfigLoader.getXFireApplicationContext(XFireConfigLoader.java:74)
at org.codehaus.xfire.spring.XFireConfigLoader.loadContext(XFireConfigLoader.java:41)
at org.codehaus.xfire.transport.http.XFireConfigurableServlet.loadConfig(XFireConfigurableServlet.java:86)
at org.codehaus.xfire.transport.http.XFireConfigurableServlet.createXFire(XFireConfigurableServlet.java:54)
at org.codehaus.xfire.transport.http.XFireServlet.init(XFireServlet.java:45)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4045)
问题的原因是因为xfire不支持spring2.0的新特性,需要修改service.xml文件,将beans元素的命名空间放到services元素上,修改后的xml如下:
<beans>
<services xmlns="http://xfire.codehaus.org/config/1.0">
</services>
</beans>
另外,由于我使用了MyEclipse的Spring Capailities和WebService Capailities(使用xfire),由于后者自带了Spring1.2.6的包,造成了和2.0版本的冲突,所以必须作以下工作:
删除<MyEclise_Home>/eclipse\plugins\com.genuitec.eclipse.ws.xfire_5.9.100\data\1.2\lib目录的Spring1.2.6包
删除Tomcat/Webapps/<项目目录>/WEB-INF/lib目录下的Spring1.2.6包(好像重新部署不能删除已经存在的包)
重新启动MyEclipse
问题解决。
分享到:
相关推荐
Spring+xFire 实现 WebService 是一种在 Java 开发中创建和使用 Web 服务的方式,它结合了 Spring 框架的灵活性和 xFire(现在称为 Apache CXF)的 Web 服务功能。以下是对这个技术栈的详细说明: 1. **环境配置**...
在实际项目开发过程中,可能会遇到需要同时使用Spring和XFire的情况。然而,在配置Spring和XFire的过程中,可能会遇到一些问题。比如,在同一个项目中加入不同版本的Spring核心JAR包时,就可能导致Spring无法正常...
总的来说,"webService+Xfire入门"的教程适合初学者,通过它你可以快速了解Web Service的基本概念,学会使用MyEclipse创建、部署和测试Web Service,并理解XFire在Web服务开发中的作用。实践这个小例子,你将对Web ...
Spring 3.1 和 XFire 1.26 是两个在Java开发中广泛使用的开源框架,主要用于构建服务导向架构(Service-Oriented Architecture, SOA)的应用程序。Spring 是一个全面的后端开发框架,提供了依赖注入、面向切面编程、...
【标题】"xfire+spring+webservice例子"是一个典型的示例项目,它演示了如何在Java环境中结合XFire和Spring框架来创建和消费Web服务。这个项目旨在帮助开发者理解和实践基于Spring的Web服务实现,同时也展示了XFire...
**XFire初识:使用Eclipse开发WebService** 在IT行业中,WebService是一种允许应用程序之间进行交互的标准化技术。它通过XML(可扩展标记语言)来交换数据,使得不同平台上的应用能够无缝对接。XFire是Java平台上一...
标题“spring+xifre 发布webservice服务”指的是使用Spring框架和XFire库来创建并发布Web服务。Spring是一个广泛使用的Java企业级应用开发框架,它提供了强大的依赖注入(DI)和面向切面编程(AOP)功能。而XFire是...
XFire、Spring和Maven是三个在Java开发中常用的工具,它们各自扮演着不同的角色。本篇将详细讲解如何利用XFire、Spring和Maven来构建一个完整的Web服务服务器和客户端。 首先,XFire是Apache CXF项目的前身,它是一...
xFire是一款已不再维护但曾经流行的Web服务客户端工具,主要用于简化Web服务的开发和测试过程。它作为一个插件集成到IDE(如NetBeans或Eclipse)中,使得开发者可以通过图形用户界面快速地调试和测试Web服务。虽然...
### Xfire配置Web Service+Spring+Hibernate详细流程 在IT领域,尤其是企业级应用开发中,集成Web Service、Spring框架以及Hibernate技术是非常常见的需求。本文将深入解析如何使用Xfire来配置并集成这三个核心技术...
【标题】:“一个xfire开发的webservice项目” 在IT领域,Web服务是一种允许不同应用程序之间进行通信的技术。本项目是基于Xfire框架开发的Web服务,它利用了Spring框架来增强服务的功能和管理。Xfire是一个已不再...
总的来说,"Spring和XFIRE结合"的主题涵盖了企业级应用开发中的重要技术,为创建可扩展、模块化的Web服务提供了坚实的基础。理解这种整合方式对于开发者来说是非常有价值的,因为它们能够提升服务的可维护性和可重用...
XFire是另一个Java WebService框架,它强调易用性和与Spring框架的集成。XFire后来与CeltiXfire合并,演变成了现在的Apache CXF项目。 Apache CXF是一个强大的开源Services框架,它不仅实现了JAX-WS(Java API for ...
【Xfire Spring Hibernate 发布WebService】是将Xfire、Spring和Hibernate这三种技术结合,用于在MyEclipse环境中创建和发布Web服务。Xfire是一个基于Java的SOAP和REST Web服务框架,Spring则提供了依赖注入和AOP...
XFire是一个轻量级的WebService框架,它使得开发WebService变得简单快捷。为了使SSH框架能够提供WebService服务,需要对项目进行以下扩展: ##### 1. 添加XFire库包 - 在项目的`.classpath`文件中添加XFire库包的...
### xfire+webservice(服务器配置篇) #### 知识点概述 本文档主要介绍了如何在现有的Spring2.5+Hibernate3.2基础上添加XFire来实现WebService服务的配置过程。通过逐步指导的方式,帮助读者了解整个配置流程,并...
### 使用XFire与Spring开发WebService的关键知识点 #### 实现功能与特点 - **基于J2EE平台的WebService服务**:这种服务充分利用了Java 2 Platform, Enterprise Edition (J2EE)的强大特性,如事务管理、安全性等,...
### WebService学习手册知识点概述 ...综上所述,本文档详细介绍了如何使用Xfire、CXF、Axis等框架开发WebService,通过一系列的示例代码和实践指导,即使是初学者也能快速掌握这些技能,并能够在实际项目中运用自如。