zoukankan      html  css  js  c++  java
  • 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;
    }
  • 相关阅读:
    NOIP2011 D1T1 铺地毯
    NOIP2013 D1T3 货车运输 倍增LCA OR 并查集按秩合并
    POJ 2513 trie树+并查集判断无向图的欧拉路
    599. Minimum Index Sum of Two Lists
    594. Longest Harmonious Subsequence
    575. Distribute Candies
    554. Brick Wall
    535. Encode and Decode TinyURL(rand and srand)
    525. Contiguous Array
    500. Keyboard Row
  • 原文地址:https://www.cnblogs.com/likwo/p/1629221.html
Copyright © 2011-2022 走看看