0 0

XFire 生成客户端产生多余的namespace的问题10

服务器端采用 CXF 2.0.5 写的web service, XFire 生成的客户端,但是调用出现问题,下面是XFire Client发送的请求的Soap包。
问题出现在红色的行。ns2这个namespace是 XFire Client 自动加上去的,一旦带有这个ns服务器端就会报NPE,因为服务器端解析不出来 componentVersionList 这个对象。
采用 SoapUI 测试,去掉这个 ns2 ,则调用完全正常。
搞不明白为何出现这种问题。

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Body>
<ns1:notifyComponentVersion xmlns:ns1="http://my.com/m/r/services">
[color=red]<ns2:componentVersionList xmlns:ns2=http://my.com/m/r/services>[/color]
<componentVersion>
<componentName>compName1</componentName>
<componentVendor>compVendor1</componentVendor>
<componentVersion>compVer1</componentVersion>
</componentVersion>
<componentVersion>
<componentName>compName2</componentName>
<componentVendor>compVendor2</componentVendor>
<componentVersion>compVer2</componentVersion>
</componentVersion>
[color=red]</ns2:componentVersionList>[/color]
<ns1:deviceClassName>deviceClassName</ns1:deviceClassName>
<ns1:deviceClassVendor>deviceClassVendor</ns1:deviceClassVendor>
</ns1:notifyComponentVersion>
</soap:Body>
</soap:Envelope>



WSDL 如下

<wsdl:definitions name="MAService4RedbendImplService" targetNamespace="http://webservice.monolith.access.com/">
<wsdl:import location="http://localhost/mcore/services/maservice4redbend?wsdl=MaService4Redbend.wsdl" namespace="http://emblaze.com/mcore/redbend/services">
    </wsdl:import>
<wsdl:binding name="MAService4RedbendImplServiceSoapBinding" type="ns1:MaService4Redbend">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="isAlive">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="isAlive">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="isAliveResponse">
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="notifyBaselineRelease">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="notifyBaselineRelease">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="notifyBaselineReleaseResponse">
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="notifyComponentVersion">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="notifyComponentVersion">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="notifyComponentVersionResponse">
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="notifyResult">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="notifyResult">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="notifyResultResponse">
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="MAService4RedbendImplService">
<wsdl:port binding="tns:MAService4RedbendImplServiceSoapBinding" name="MAService4RedbendImplPort">
<soap:address location="http://localhost/mcore/services/maservice4redbend"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
SOA 
2008年9月10日 10:12

1个答案 按时间排序 按投票排序

0 0

如何解决的,我的也出现这个问题

2013年9月02日 17:15

相关推荐

    xfire根据WSDL生成客户端代码

    本文将详细介绍如何使用XFire根据WSDL文件生成客户端代码,以便快速地与Web服务进行交互。 首先,我们需要了解WSDL文件的结构。一个WSDL文件通常包含以下关键元素: 1. **服务(Service)**:定义服务的位置,即...

    xfire客户端生成

    **xfire客户端生成** 在IT行业中,Web服务已经成为不同系统间通信的重要手段,而XFire则是Java平台上一种流行且强大的Web服务实现框架。XFire,全称为XFire SOAP RPC,它提供了一种简单的方式来创建和消费Web服务。...

    xfire客户端包含所需要的jar

    在本文中,我们将深入探讨XFire客户端及其核心组件——jar文件,以及如何利用它们来构建和交互Web服务。 首先,让我们理解XFire的核心概念。XFire是一个基于Apache CXF前身的框架,它的设计目标是简化Web服务的开发...

    webservice xfire 客户端调用实现

    2. 生成客户端代码:使用XFire的wsdl2java工具生成客户端代理类。 3. 创建客户端实例:在Java代码中创建代理类的实例,通常需要指定服务的地址。 4. 调用服务方法:通过代理类的方法调用远程服务,传递必要的参数。 ...

    xfire客户端eclipse插件

    XFire客户端Eclipse插件是开发人员在使用Eclipse IDE时用于集成XFire服务框架的工具。XFire,现在已被Apache CXF所吸收,是一款强大的Java Web服务框架,旨在简化创建和部署Web服务的过程。这款插件使得在Eclipse...

    XFire Webservice 客户端

    XFire Webservice客户端可能设计为跨平台,可以在不同的操作系统上运行,如Windows、Mac OS和Linux,这需要考虑各种平台的API调用和兼容性问题。 **10. 开发工具与调试** 开发XFire Webservice客户端时,开发者可能...

    Xfire客户端调用webservice jar包

    4. 在Xfire客户端代码中实例化并调用生成的代理类,传递必要的参数以执行Web服务操作。 5. 处理返回的结果,将数据展示或用于客户端逻辑。 在实际开发中,可能还需要考虑错误处理、安全性和性能优化等问题。例如,...

    spring2.5+xfire1.2.6 客户端和服务端的配置

    4. **自动代码生成**:Xfire能够自动生成服务接口和客户端代理类,减少了手动编码的工作。 **配置过程**: 在Spring 2.5中集成Xfire通常涉及以下几个步骤: 1. **添加依赖**:在项目中引入Spring和Xfire的相关库。 ...

    Xfire的client.zip_Xfire客户端代码_webservice

    4. **SOAP(Simple Object Access Protocol)处理**:Web服务通常使用SOAP协议进行数据交换,客户端代码需要能够生成和解析SOAP消息。 5. **异常处理**:客户端代码需要有良好的错误处理机制,当与Web服务通信出现...

    xfire客户端应该具有的JAR

    虽然Xfire目前已不再提供服务,但它的客户端在过去的几年里深受游戏玩家的喜爱。在这个主题中,我们将深入探讨Xfire客户端应该具有的JAR文件及其重要性。 JAR(Java Archive)文件是Java平台特有的归档格式,它用于...

    spring xfire 客户端实例

    Spring XFire 是一个基于Spring框架的SOAP Web服务客户端和服务器实现,它允许开发者轻松地创建和消费Web服务。本文将详细介绍Spring XFire客户端的实例应用,以及如何利用它来实现Web服务的调用。 首先,我们需要...

    xfire客户端jar

    标题 "xfire客户端jar" 指的是XFire这一款基于Java开发的多玩家游戏平台的客户端组件。XFire是一款曾经流行的在线游戏社区软件,它允许玩家与朋友一起玩游戏、记录游戏时间、查看成就,以及参与游戏内的社交活动。在...

    xfire生成webservice

    在JBoss 5.1中运行XFire生成的Web服务,需要注意的是,JBoss版本与XFire的兼容性问题。虽然JBoss 5.1相对较旧,但通常来说,只要XFire版本与JDK和JBoss版本兼容,就可以顺利运行。如果遇到问题,可能需要检查服务器...

    xfire创建服务端客户端源码

    《xfire创建服务端客户端源码详解》 Xfire,作为一个历史悠久的开源项目,曾经在游戏服务器通信领域占据着重要地位。它提供了丰富的API和工具,使得开发者能够轻松地构建服务端与客户端之间的通信框架。本文将深入...

    xfire开发客户端报告文档[收集].pdf

    《Xfire客户端开发详解》 Xfire是一款强大的Web服务客户端开发工具,尤其在与Spring框架集成后,能够方便地访问各种Web服务。本文主要围绕如何获取Wsdl文档、使用Xfire访问未知服务器的两种方法以及结合Spring进行...

    xfire客户端使用需包2

    commons-httpclient-3.1.jar,xfire客户端使用需包2

    xfire客户端

    《Xfire客户端详解:源码解析与工具应用》 Xfire是一款曾经非常流行的多游戏即时通讯软件,它允许玩家在游戏过程中与好友聊天、组队、查看在线状态等功能。随着时代的变迁,虽然Xfire已逐渐淡出人们的视线,但其...

    xfire客户端应用

    xfire客户端EXE的程序应用,可直接用客户端来连接远程Webservice服务端应用

    xfire客户端jar包

    xfire客户端jar包是用于构建Web服务客户端的一个关键组件,它是Apache CXF项目早期的版本。Apache CXF是一个流行的开源框架,它支持多种Web服务标准,包括SOAP、RESTful API和WS-*规范。xfire-jar包包含了实现这些...

Global site tag (gtag.js) - Google Analytics