mod_gsoap(gsoap与Apache服务器的集成)

利用gsoap很容易的产生出服务端与客户端的代码,下面详细描述将服务端的代码集成到apache的步骤。

 

本文采用的工具是vs2012,示例代码来源于:gsoap-2.8\gsoap\samples\calc

$ soapcpp2 -c calc.h

通过上面的命令就能产生客户端与服务端的代码(用不到*.xml文件可以删掉,如下图所示)。

 

说明:

1.gsoap的标准函数stdsoap2.h和stdsoap2.c需要额外从gsoap的根目录下拷贝;

2.soapClientLib.c和soapserverLib.c虽然用不到,建议保留着。

 

1、用vs2012导入gsoap-2.8\gsoap\mod_gsoap\mod_gsoap-0.6\apache_20\mod_gsoap工程,编译出mod_gsoap.so模块。

如下图所示:

 

 

2、在mod_gsoap模块所需的配置文件(本文是mod_gsoap.conf)末尾添加如下设置

LoadModule gsoap_module modules/mod_gsoap.so

<IfModule mod_gsoap.c>

 <Location /soap>

  SetHandler gsoap_handler

  SOAPLibrary D://Apache24//Win32_Debug//ex_modules//gsoapDLL.so

  Order allow,deny

  Allow from all

 </Location>

</IfModule>

3、在上面的第二步中,配置参数SOAPLibrary 用到了gsoapDLL.so,这一步的目的就是编译该动态库。

 

 

这一步中务必保证apache_init_soap_interface为导出函数,只有这样在mod_gsoap.so模块中才能调用。其他的五个用户自定义函数(ns__add、ns__sub、ns__mul、ns__div、ns__pow)无需为导出函数。

4、建立客户端工程发送请求

 

 

说明:

1.将calc.wsdl文件放到gsoapDLL.so所在目录下,并将其改名为gsoapDLL.wsdl。这样通过浏览器访问http://localhost/soap?wsdl时就能返回到浏览器上。

2.本文的word文档详见:http://download.csdn.net/detail/sszgg2006/8899077

 

本方案主要参考gsoap官网自带的Demo,位于gsoap-2.8\gsoap\mod_gsoap\mod_gsoap-0.6\apache_20\README.txt.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值