Linux下使用gsoap访问Jira的实战

下载gsoap-linux-2.7.tar.gz(http://gsoap2.sourceforge.net/)到/test/gsoap

解压gsoap-2.7.tar.gz

分别执行

./configure --prefix=/usr/local/gsoap

make

make install


cd /

#建立/jira文件夹

mkdir /jira

cd /jira

#http://..../jira/rpc/soap/jirasoapservice-v2?wsdl 这个是jira的wsdl文件

/usr/local/gsoap/bin/wsdl2h -c -o jira.h  http://..../jira/rpc/soap/jirasoapservice-v2?wsdl


/usr/local/gsoap/bin/soapcpp2 -c jira.h

/usr/local/gsoap/bin/wsdl2h 是gsoap的安装路径

gcc -I /test/gsoap/gsoap-2.7/gsoap -o jiraclient jiraclient.c soapC.c soapClient.c /test/gsoap/gsoap-2.7/gsoap/stdsoap2.c

/test/gsoap/gsoap-2.7/gsoap ==>gsoap的下载源文件解压缩路径

遇到error,就到指定的文件里把error函数删除,直到没有错误。警告没关系。

如果编译成功,会在/jira目录里生成 jiraclient可执行文件。

-o 生成的可执行文件名。

后面的是依赖文件。

通过如下方式执行。

cd /jira

./jiraclient jiraname jirapwd



对于gcc -I /test/gsoap/gsoap-2.7/gsoap -o jiraclient jiraclient.c soapC.c soapClient.c /test/gsoap/gsoap-2.7/gsoap/stdsoap2.c

这个命令,经过测试 -I /test/gsoap/gsoap-2.7/gsoap可以省略。可以把 /test/gsoap/gsoap-2.7/gsoap/stdsoap2.c里的stdsoap2.c stdsoap2.h

复制到 /jira文件夹。这样编译命令就编程了

gcc -o jiraclient jiraclient.c soapC.c soapClient.c stdsoap2.c 


下面是jiraclient.c的源代码。


--------------------

jiraclient.c

--------------------

#include "soapH.h"

#include "jirasoapservice_v2SoapBinding.nsmap"

int main(int argc, char **argv)

{

  struct soap soap;

  soap_init(&soap);

  char *retValue;

 //soapStub.h 里有soap_call_ns4__login函数,所有能调用的WebService方法都在这个文件夹里。

  if(soap_call_ns4__login(&soap,NULL,NULL,argv[1],argv[2],&retValue) == SOAP_OK)

    printf("%s ",retValue);

  else

    soap_print_fault(&soap, stderr);

  soap_destroy(&soap);

  soap_end(&soap);

  soap_done(&soap);

  retValue=null;

  return 0;

}

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空