关于idea利用wsdl文件调用接口测试的相关问题
1.如何利用wsdl地址调用其中代码。在此我只说用idea利用wsdl地址生成客户端调用。
1.2idea2018版,选中项目名,右键弹框中最下面的webservice,输入相关地址,可以本地也可以是远程地址。
点击OK之后,idea就会自动生成相关代码。
可以将带class后缀的代码类删除,因为多余无用。
接着就可以根据里面的方面调用相关接口测试了,接口可能需要跳一跳,嗯,就是不是直接调用转换一下就行。
1.2 2019版的idea由于将右键出现webservice,所以只能采用新生成项目,File->new->project
点击next,然后定义项目名->finish即可。新生成项目的同时就会出现下面图片
点击OK就会自动生成相关代码,这里生成的代码比idea2018生成的会简洁很多。
但是我的想要的不是新生成项目而是在项目中做为一个方法来进行调用,所以idea2019这样不行。尝试过将idea2019生成的代码粘贴到相关项目中,再将依赖也写入,但是启动项目不报错,但是在调用的时候就会报初始化错误,在下资历浅薄,不能解决,若有人知道如何解决,烦请在评论中告知一下,在此表示感谢。
到这里,在座各位可能觉得已经能够成功调用相关接口了,但是气人的是生成wsdl的技术人员却将自己本地开启的服务带到了wsdl文件中,导致服务连接拒绝。联系相关人员,根本不做回应,能咋办?只能寻求解决方法了。
坎坷之路又开始了。
文件中的调用地址错误。想改掉,有两种方法。
1.右键将wsdl文件保存到本地,在文件中修改调地址,然后再用上面的方法生成相关代码,但是唯一的问题是wdsl的地址就会是你本地的地址,只能在本地调用。
2.直接在代码中修改调用地址
代码示例:
BindingProvider bindingProvider = (BindingProvider) service; //service 为自己调用的服务
bindingProvider.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, wsdlURL);//wsdlURL为你需要调用的服务正确的地址