2014-11-21 36 views
0

我需要使用mod_gsoap模块构建和部署C++ Web服务,并且需要一些提示。mod_gsoap错误与C++服务

我按照http://techiebitsandpieces.blogspot.de/2011/03/all-things-modgsoap.html的说明操作,示例“calc.c”服务工作正常。然后,我以同样的方式尝试了calc.cpp示例,但它不同并且没有奏效。
我得到这些错误:

mod_gsoap Apache SOAP Server Error 
gsoap: httpd.conf module mod_gsoap.c SOAPLibrary load "/app/home/coruser/schmidt/gsoap-2.8.14/gsoap-2.8/gsoap/samples/calc++/.libs/calcserver.so" success, but failed to find the "apache_init_soap_interface" function entry point defined by IMPLEMENT_GSOAP_SERVER() 
Please see the README instructions with the mod_gsoap package for details. 
Content headers of the request 
Accept-Encoding: gzip,deflate 
Content-Type: text/xml;charset=UTF-8 
SOAPAction: "" 
Content-Length: 453 
Host: lxcor03e:6127 
Connection: Keep-Alive 
User-Agent: Apache-HttpClient/4.1.1 (java 1.5) 

我认为“没有找到‘的意思apache_init_soap_interface’由IMPLEMENT_GSOAP_SERVER()定义的函数入口点”,我的交换“的main() - 方法”是错误的,它看起来像这样的:

> #include "apache_gsoap.h" 
> 
> IMPLEMENT_GSOAP_SERVER() 
> 
> extern "C" int soap_serve(struct soap *soap) 
> { calcService service(soap); 
> int err = service.serve(); 
> service.destroy(); 
> return err; } 

任何帮助,将不胜感激

回答

1

这表明calcserver.so没有正确生成。我建议不要使用apache的apxs工具为C++服务生成.so文件。

+0

那么推荐另一个? – danopz 2015-07-20 11:52:49

+0

我会建议使用标准的g ++命令来生成.so文件。 – 2015-07-20 12:22:44