axis调用cxf的webservice注意事项
需要注意的是:
1.wsdl显示部分内容
1,cxf服务端定义webservice接口的时候,要在接口类上注解@WebService(targetNamespace="http://xxxx.xxxx.webservice.xxxxx.com.cn"); 命名空间必不可缺,否则抛异常如下:
org.apache.cxf.interceptor.Fault: Unexpected wrapper element {http://service.jx4a.services.ismp.sitech.com}addUser found. Expected {http://service.master.webservice.venustech.com.cn}addUser.
例如:
@WebService(targetNamespace="http://impl.ws.file.lantop.im.avicit/")
public interface ArchiveFileService {}
2,public String addUser(@WebParam(name="requestData") String requestXml); 定义的方法名,也要加上注解@WebParam,否则抛异常如下:
org.apache.cxf.interceptor.Fault: Unmarshalling Error: unexpected element (uri:"", local:"xxxxx"). Expected elements are <{}arg0>
例如:
@WebMethod(operationName = "uploadAttachment")
@WebResult(name = "result")
public int uploadAttachment(@WebParam(name = "fileId") String fileId, @WebParam(name = "buffer") byte[] buffer, @WebParam(name = "offset") int offset,@WebParam(name = "dataId") String dataId);