调用webService出错的一个问题,请大神解惑

拾叁不是13 2018-01-31 02:16:57
shipInfoservice

调用对方的getShipInfoByMMSI()接口时,出现报错信息:
Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: org.springframework.jdbc.UncategorizedSQLException cannot be cast to org.apache.cxf.interceptor.Fault
at com.sun.xml.ws.fault.SOAP11Fault.getProtocolException(SOAP11Fault.java:188)
at com.sun.xml.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:108)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:119)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:89)
at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:118)
at com.sun.proxy.$Proxy35.getWxphhXxByCbbh(Unknown Source)
at com.cetc28.dataTransfer.service.infoGetter.gxmsa.shipInfo.GXShipInfoGetter.getShipInfoByMMSI(GXShipInfoGetter.java:212)

调用过程如下:
shipEntityListResult = shipInfoservice.getCbxxByMmsi(mmsi, true, start, PAGE_SIZE);

对方提供的接口
@WebMethod
@WebResult(targetNamespace = "")
@RequestWrapper(localName = "getCbxxByMmsi", targetNamespace = "http://www.allhigh.com.cn/", className = "com.**.dataTransfer.service.infoGetter.gxmsa.wsClient.shipService.GetCbxxByMmsi")
@ResponseWrapper(localName = "getCbxxByMmsiResponse", targetNamespace = "http://www.allhigh.com.cn/", className = "com.**.dataTransfer.service.infoGetter.gxmsa.wsClient.shipService.GetCbxxByMmsiResponse")
public ShipEntityListResult getCbxxByMmsi(
@WebParam(name = "mmsi", targetNamespace = "") String mmsi,
@WebParam(name = "exactMatch", targetNamespace = "") boolean exactMatch,
@WebParam(name = "start", targetNamespace = "") int start,
@WebParam(name = "count", targetNamespace = "") int count);

查询方案:
javax.xml.ws.soap.SOAPFaultException,网上有个解答说是因为targetNamespace不一致导致的,但是经过比对后发现接口入参和wsdl定义的入参是都是一样的,出错原因初步排查是对面的sql语句出现了问题,请大神们看看是不是这样子
...全文
454 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

8,906

社区成员

发帖
与我相关
我的任务
社区描述
XML/XSL相关问题讨论专区
社区管理员
  • XML/XSL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧