工作中遇到的问题(第二弹)

记2020.5.19遇到的问题

webService 使用时,找不到分派方法

  • 报错:org.springframework.remoting.jaxws.JaxWsSoapFaultException: Client received SOAP Fault from server: 找不到{XXXXX}function的分派方法

  • 原因:是在接口上,我使用的是idea自带的插件去下载wsdl上的接口,导致下载下来的接口上缺少了一些注解,如下:
    图1

  • 解决方法:webservice服务注入的bean实现的接口必须提供targetNamespace,对应的服务实现类的operationName必须和接口的operationName保持一致 不然找不到方法,修改如下:
    图2

webService调用常见错误原因

  • 如果出现这个错误:java.lang.NoClassDefFoundError: javax/xml/soap/SOAPException,原因是没有导入 axis2-saaj.jar包

  • 如果出现这个错误:java.lang.NoClassDefFoundError: org/apache/commons/discovery/tools/DiscoverSingleton,原因是没有导入commons-discovery.jar包

  • 如果出现这个错误:org.apache.commons.logging.LogFactory,原因是没有导入commons-logging.jar包

  • 如果出现这个错误:Exception in thread “main” javax.xml.ws.soap.SOAPFaultException: Error invoking (……) Nested exception is java.lang.reflect.InvocationTargetException: null,原因是代码上传到服务器时不完全导致的。

  • 如果客户端使用的是axis调用webservice方式,服务器端收到了请求,但请求的参数显示却为null,原因是在客户端使用call.addParameter设置参数时,和发布的wsdl服务中的参数名不完全一致(大小写也要保持相同)。将客户端每个接口的参数设置为和wsdl中的相同即可。

  • 如果出现这个错误:java.lang.NoClassDefFoundError: javax/xml/rpc/Service,原因是没有导入jaxrpc.jar包(可以到axis官网下载对应版本的axis,在其中的lib目录可以找到);如果使用的是maven,可以导入org.apache.axis下的axis-jaxrpc-1.4.jar。


文章作者: Kobe-Liu1
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Kobe-Liu1 !
 上一篇
工作中遇到的问题(第三弹) 工作中遇到的问题(第三弹)
记5.20-5.21工作中遇到的问题首先是mybatis部分的问题update操作的时候,代码中显示已update完成,但是数据库中对应的数据并没有更新 原因:在获取sqlSession对象的时候:SqlSession sqlSession
2020-05-21 Kobe-Liu1
下一篇 
一些自己用的软件整理 一些自己用的软件整理
常用软件以及下载地址(第一弹)SoapUI 5.5.0本来是想整pro版的,但是由于装的时候有报错(淦),200多个g你跟老子讲硬盘容量不够,果断放弃 ,整了个个人版的,日常测试还是够了,提取码:k15fSoapUI 提取地址 STS
2020-05-18 Kobe-Liu1
  目录