免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1142 | 回复: 0
打印 上一主题 下一主题

gsoap 基础 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-12-10 17:33 |只看该作者 |倒序浏览
背景:
        SOAP可以让大家共享函数,可是在c语言下使用这样的技术有很多困难。更别说在linux下使用了。gsoap是个很好的选择。
1.下载wsdl文件
2.wsdl2h -o header.h -c hello.wsdl *.wsdl
3.soapcpp2 -c header.h
4.编写程序
    4.1全局
#include "soapH.h"                      //可以省略
#include "FaxServiceSoapBinding.nsmap"  //.nsmap文件,当有多个wsdl文件时,只引入一个nsmap文件即可
    4.2与其他c程序的结合
    写成函数
    testSoap(){
        struct soap soap;
        struct ns3__exampleResponse ret;    //在soapH.h中找到
        soap_init(&soap);
        soap_set_mode(&soap, SOAP_C_UTFSTRING);
        soap.userid="csefaxcn";
        soap.passwd="cs070106";
        if(soap_call_ns3__example(&soap, NULL, NULL, "Fax_webservice成功", &ret) == SOAP_OK)    //从header.h中找到
            printf("%s\n", ret._exampleReturn);     //打印返回值,可能是其他的类型
        else
            soap_print_fault(&soap, stderr);
                                                    //如果要再调用其他程序,还要重设userid和passwd
        soap_destroy(&soap);
        soap_end(&soap);
        return 0;
    }   
    4.3
    有些名字是从生成的.h文件中找到的如:soapH.h, header.h
5.编译
5.1gcc -o bin_name header.c soapC.c soapClient.c -lgsoap
5.2与eicon api结合
改makefile
LIBS=$(LIBDIVA) -lpthread  -lgsoap $(LIBGPP) $(LIBSTDCPP)   //-lgsoap是后添加的
$(CC) $(CFLAGS) $(INCLUDES) $^ $(LIBS) src/soapC.c src/soapClient.c  -o $(TARGET)   //src/soapC.c src/soapClient.c是后添加的
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/48467/showart_439624.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP