如何解决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= "
// name= "text" 可以不要; targetNamespace 必须要;
// demo.com用的 此接口类 的包路径
String sayHi(@WebParam(name=" 入参", targetNamespace= "http://demo.com/") String text);
}
增加 @SOAPBinding(style = Style.RPC) 此注解后问题得到解决
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。