JDK1.4.2
创建一个WEB Service工程XFire,按照网上的实例开发了一个简单的HelloWorld程序,发布到TOMCAT一切OK。
客户端用XFire插件开发(比较方便),需要先下载插件,步骤如下:
打开Eclipse的Help菜单,选择”Software Updates”,然后再选择”Find and Install.”
选择"Search for new features to install",然后点击Next
选择"Create New Remote Site", 在name中输入"XFire",在eclipse update site中输入
http://dist.codehaus.org/xfire/update/
选择OK
选择Finish。
2、新建一个java project。命名为“Client”,其他默认,finish。
3、File->New->Other ,选择“XFire”文件夹下的“Code generation from WSDL document”,打开代码生成向导,
WSDL的地址栏填入http://localhost:8080/XFire/services/HelloWorldService?wsdl,Output directory栏中点浏览按钮,选择我们刚才新建的项目Client,这两项是必填的。可选项中,package一栏可以选已经存在的包名,如果不填这一项,代码生成器会在wsdl目标命名空间的基础上创建一个。
完成后,可以看到项目中多了XFire类库,还有package下面的生成的一些类。此时要保证IDE的Tomcat服务器是打开的。
此时,在调用服务之前,还有一个重要的步骤,从XFireProject项目的右键菜单里调出Properties配置窗口,选中左面一栏中的XFire项,右面会列出所有与XFire运行有关的类库,按列表中所示的,选中一些类库,这些类库在调用本服务时是必须的。
Commons Codec(commons-codec-1.3.jar)
Commons HttpClient(commons-httpclient-3.0.jar)
如果缺少这两个JAR文件,客户端在调用WEB 服务时会出错。
所有的配置都已经完成,最后就是编写代码完成调用。
在Tomcat下正常发布,客户端也能正常调用。然而在发布到WebSphere5.1(base)上面时,就出现了一些列问题,下面是问题简单描述(只截取了LOG中部分信息)以及解决过程。
[11-10-27 16:37:45:844 CST] 70140f9e WebGroup E SRVE0026E: [Servlet 错误]-[javax.xml.namespace.QName: method <init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V not found]:java.lang.NoSuchMethodError: javax.xml.namespace.QName: method <init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V not found
at at org.codehaus.xfire.aegis.type.DefaultTypeMappingRegistry.<clinit>(DefaultTypeMappingRegistry.java:66).null(Unknown Source)
at org.codehaus.xfire.aegis.AegisBindingProvider.<init>(AegisBindingProvider.java:67)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java(Compiled Code))
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java(Compiled Code))
at java.lang.reflect.Constructor.newInstance(Constructor.java(Compiled Code))
at java.lang.Class.newInstance3(Class.java(Compiled Code))
at java.lang.Class.newInstance(Class.java(Compiled Code))
at org.codehaus.xfire.service.binding.ObjectServiceFactory.getBindingProvider(ObjectServiceFactory.java:173)
at org.codehaus.xfire.service.binding.DefaultServiceConfiguration.getInParameterName(DefaultServiceConfiguration.java:162)
at org.codehaus.xfire.service.binding.ObjectServiceFactory.getInParameterName(ObjectServiceFactory.java:1063)
at org.codehaus.xfire.service.binding.ObjectServiceFactory.addOperation(ObjectServiceFactory.java:817)
at org.codehaus.xfire.service.binding.ObjectServiceFactory.initializeOperations(ObjectServiceFactory.java:761)
at org.codehaus.xfire.service.binding.ObjectServiceFactory.create(ObjectServiceFactory.java:444)
at org.codehaus.xfire.service.binding.ObjectServiceFactory.create(ObjectServiceFactory.java:374)
[11-10-27 16:37:48:875 CST] 5e824f95 WebGroup E SRVE0026E: [Servlet 错误]-[org/codehaus/xfire/aegis/type/DefaultTypeMappingRegistry]:java.lang.NoClassDefFoundError: org/codehaus/xfire/aegis/type/DefaultTypeMappingRegistry
at org.codehaus.xfire.aegis.AegisBindingProvider.<init>(AegisBindingProvider.java:67)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java(Compiled Code))
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java(Compiled Code))
at java.lang.reflect.Constructor.newInstance(Constructor.java(Compiled Code))
at java.lang.Class.newInstance3(Class.java(Compiled Code))
at java.lang.Class.newInstance(Class.java(Compiled Code))
at org.codehaus.xfire.service.binding.ObjectServiceFactory.getBindingProvider(ObjectServiceFactory.java:173)
at org.codehaus.xfire.service.binding.DefaultServiceConfiguration.getInParameterName(DefaultServiceConfiguration.java:162)
at org.codehaus.xfire.service.binding.ObjectServiceFactory.getInParameterName(ObjectServiceFactory.java:1063)
at org.codehaus.xfire.service.binding.ObjectServiceFactory.addOperation(ObjectServiceFactory.java:817)
at org.codehaus.xfire.service.binding.ObjectServiceFactory.initializeOperations(ObjectServiceFactory.java:761)
at org.codehaus.xfire.service.binding.ObjectServiceFactory.create(ObjectServiceFactory.java:444)
at org.codehaus.xfire.service.binding.ObjectServiceFactory.create(ObjectServiceFactory.java:374)
at org.codehaus.xfire.service.binding.ObjectServiceFactory.create(ObjectServiceFactory.java:355)
相关推荐
Websphere 5.1是IBM提供的...在使用过程中,遇到问题时,可以参考IBM官方文档或在线社区寻求帮助,因为理解和解决问题是持续学习过程的一部分。希望这些信息能帮助到有需要的人,避免他们在网络资料的海洋中迷失方向。
`Websphere5.1监控(Loadrunner).doc`这份文档应该包含了详细的步骤说明,包括WebSphere服务器上的JMX配置、LoadRunner中的监控器设置等内容。仔细阅读并按照文档指示进行操作是成功配置的前提。 步骤二:准备应用...
综上所述,这个示例展示了如何在Spring中集成iBATIS实现数据访问,以及如何在WebSphere 5.1环境下部署和发布Web服务。这不仅涵盖了Java企业级开发的基础知识,还涉及了服务器管理和Web服务技术,是学习和实践Java EE...
因此,XDoclet for WebSphere 5.1不仅提供了强大的工具集,还拥有一个活跃的开发者社区,可以为用户提供支持和解决问题。 在提供的压缩包文件“xdoclet-websphere”中,可能包含了以下内容: 1. XDoclet for ...
总的来说,IBM WebSphere Portal 5.1 是一个强大且全面的门户解决方案,旨在为企业提供统一、安全且高效的数字化工作环境,促进业务流程自动化,提升用户交互体验,并支持多设备访问,适应不断变化的业务需求。
【描述】:“本文主要是讲述在Red Hat Linux环境下安装WebSphere 5.1的过程,通过截图详细展示了配置的各个步骤。” 在Linux操作系统,尤其是Red Hat Linux上部署WebSphere,是很多IT专业人员在企业环境中常见的...
本文将详细介绍如何解决Websphere Application Server 6.1中的乱码问题。 首先,我们需要理解乱码问题产生的原因。乱码通常是由字符编码不匹配导致的,比如服务器使用了不同的字符编码来解析和显示数据。在...
这类问题往往会影响到业务的正常运行,降低用户体验,因此及时有效地解决问题至关重要。本文将详细探讨WEBSPHERE中出现中文乱码的具体原因以及相应的解决方案。 #### 一、问题背景与分析 根据提供的信息来看,用户...
在描述中提到,开发者之前尝试使用CXF发布Web服务,但由于与IBM Websphere应用服务器存在兼容性问题,因此转向了Xfire。这可能是因为Xfire在当时的某些环境下更易于配置和集成,或者其API与Websphere的交互更为顺畅...
WebSphere 常见问题及解决办法详解 在本文中,我们将详细探讨 WebSphere 中的一些常见问题及其解决方法。...在实际应用中,了解这些问题和解决方法可以帮助开发者快速解决问题,提高应用程序的稳定性和性能。
在websphere8.5 下部署含有CXFwebservice的war包无法正常启动,...归根结底原因不是找不到类,而是发布后war下的jar与websphere自身平台下的jar冲突了,要解决此问题就要通过在websphere下建立共享库来根除,可参考附件
本文将深入探讨在Websphere环境下发布Web服务的详细步骤和相关知识点。 首先,我们需要了解Websphere中的Web服务架构。它基于JAX-WS(Java API for XML Web Services)规范,提供了全面的支持,包括服务的创建、...
首先,让我们详细了解WebSphere Application Server 5.1支持的操作系统。这款版本兼容多种操作系统,包括AIX、OS/400、多种Linux发行版(如Red Hat Enterprise和SuSE SLES)、Solaris、HP-UX、Windows 2000和2003等...
在WebSphere上发布CXF(Camel XFire)服务是一个涉及多个步骤的过程,需要注意一系列细节以确保服务能够正常运行。CXF是一个流行的开源框架,用于构建和开发基于Java的Web服务。以下是一些关键的注意事项: 1. **...
Apache Shiro是一个强大的Java安全框架,它为应用程序提供了身份验证、授权、会话管理和加密服务。在Websphere应用服务器环境下,...同时,理解Shiro的核心功能和如何与Websphere协同工作对于排查和解决问题至关重要。
重新安装虽然是一种解决方案,但往往耗时费力且不一定能够成功解决问题。因此,本文将详细介绍两种无需重新安装即可解决Websphere Application Server 6.1许可证有效期问题的方法。 #### 方法一:快速解决办法 **...
### WebSphere应用发布详解 #### 一、WebSphere概述与安装配置 **WebSphere** 是IBM推出的一款企业级应用服务器,主要用于部署、管理和监控Java EE应用程序。它支持多种操作系统平台,如Windows、Linux、Solaris等...