微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何解决xfire调用cxf的webservice问题

客户端 jDK1.5 ,用xfire调用CXF的webservice

问题如题:

org.codehaus.xfire.fault.XFireFault: Unmarshalling Error: 

Unexcepted wrapper element ...

解决方法:在cxf接口 定义中加入 @WebParam 写入命名空间

package com.demo;

 

import javax.jws.WebParam;
import javax.jws.WebService;

@WebService
public interface HelloWorld
{
//@WebParam(name="text", targetNamespace= "

// name= "text" 可以不要; targetNamespace 必须要;
// demo.com用的 此接口类 的包路径


String sayHi(@WebParam(name=" 入参", targetNamespace= "http://demo.com/")  String text); 
}

加上后,终于调用成功,可是有发现新的问题,xfire客户端调用cxf服务的时候传递过去的参数,String 类型的 但是服务端得到的入参总是 null 

经过分析后,修改

 

import javax.jws.WebParam;
import javax.jws.WebService;

@WebService

@SOAPBinding(style = Style.RPC) // 增加

public interface HelloWorld
{
//@WebParam(name="text", targetNamespace= "http://demo.com/") String text); 
}

增加 @SOAPBinding(style = Style.RPC)  此注解后问题得到解决

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐