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;
    }
  • 相关阅读:
    yum工具及Linux中jdk,tomcat安装
    SSH工作机制和网络配置
    Linux目录,权限,用户管理的命令
    安装Linux服务及其网络配置
    使用Jedis,JedisPool,JedisCluster链接redis
    springboot项目整合定时任务
    pageHelper分页原理及实战
    Net异步委托-泛型委托Action<T>与Func<T,TResult>及 异步调用AsyncCallback
    Oracle 数据库操作相关脚本
    运行npm报错:无法加载文件 D: odejs ode_globalwebpack.ps1,因为在此系统上禁止运行脚本
  • 原文地址:https://www.cnblogs.com/likwo/p/1629221.html
Copyright © 2011-2022 走看看