gsoap 调用 java_Qt5 + gSOAP 调用 Webservice

开发环境

Win10+Qt5.7+gSOAP2.8.43

使用步骤

1、下载gSOAP

下载地址:https://sourceforge.net/projects/gsoap2/files/

2、生成.h头文件

使用 wsdl2h 根据 WSDL 生成一个C/C++ 语法结构的 .h 头文件,打开命令行窗口,进入目录【C:\Java\gsoap-2.8\gsoap\bin\win32】,执行下面的命令

bin\win32\wsdl2h -s -ohzsws.h http://192.168.1.21:8088/wbxt/services/mobile?wsdl

目的:实现 WSDL 文件到 .h 文件的数据映射

3、soapcpp2

使用 gSOAP 的预编译器 soapcpp2 根据头文件生成存根文件(soapStub.h)和生成客户端代码框架

bin\win32\soapcpp2 -i -x -C -L hzsws.h

目的:生成相应的底层通讯代码

4、编写客户端程序

(1)前面生成的文件加入项目中:

MobileServiceImplServiceSoapBinding.nsmap、

soapC.cpp、

soapH.h、

soapStub.h、

soapMobileServiceImplServiceSoapBindingProxy.cpp、

soapMobileServiceImplServiceSoapBindingProxy.h、

stdsoap2.cpp、

stdsoap2.h

(2)在 .pro 文件中加入下面一句:

LIBS += C:/Qt/Qt5.7.0/Tools/mingw530_32/i686-w64-mingw32/lib/libws2_32.a

(编译的时候总是报错,在这里找到了原因 https://wiki.qt.io/How_to_use_gSOAP_with_Qt_for_Web_Service_Client ,是因为没有加入 libws2_32.a )注意:在Windows系统下需要加入这句,在Linux和macOS系统下不需要。

(3)编写自己的代码

注意事项

1、在\gsoap_2.8.43\gsoap-2.8\gsoap目录下执行wsdl2h命令,如果在\gsoap_2.8.43\gsoap-2.8\gsoap\bin\win32目录下执行会提示如下错误

f44f9bae9a99124505195427d75a1689.png

2、在使用wsdl2h命令的时候-o和路径之间不要有空格

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值