`

webservice 开发 axis2 简单部署服务 gSoap 客户端通信

阅读更多

WebService 的服务端  webservice 开发 axis2 简单部署服务  就是用前一章中的服务端

 

wsdl如下:

http://localhost:8080/axis2/services/SimpleService?wsdl

 

下载 gsoap 2.8 版本

 第一步生成头文件:

  wsdl2h   –o hello.h -s  http://localhost:8080/axis2/services/SimpleService?wsdl

     参数说明 -s  不要使用STL代码 

 

 第二步 根据头文件生成stub

 soapcpp2.exe -i -C -x hello.h -IF:\gsoap-2.8\gsoap\import

     参数说明 -i 直接使用C++包装类 -x 不要生成一堆看了就恶心的xml -C 只生成客户端相关代码 -I 指定import路径

 

第三步 VS2008 创建 命令行工程  ws5
 
第四步 编辑工程属性   C/C++ -> 预编译头 ->  创建/使用预编译头    选择 不使用预编译头

第五步 编辑工程属性   链接器->输入->附件依赖项  输入 WSock32.Lib

 

第六步 把刚才gsoap生成的文件 soapH.h   soapC.c   soapStub.h  soapClient.c

           和gsoap文件夹下的       stdsoap2.h  stdsoap2.c    拷贝到当前工程下面

 

 第七步 实现

 

#include "stdafx.h"

#include <locale.h>
#include <stdio.h>
#include <stdlib.h>

#include "soapH.h"
#include "SimpleServiceSoap11Binding.nsmap"


int _tmain(int argc, _TCHAR* argv[])
{
	struct soap *soap = soap_new();
    struct _ns1__getGreetingResponse out;

    soap->mode|=SOAP_C_MBSTRING;
    soap_set_mode(soap,SOAP_C_MBSTRING);
    setlocale(0,"chs");

    struct _ns1__getGreeting resq;
    resq.name="超人";
    if(soap_call___ns1__getGreeting(soap,NULL,NULL,&resq,&out)==SOAP_OK){
        printf("%s\n",out.return_);
    }

	printf("Press enter to continue ...");
	getchar();
	return 0;
}

 

 输出结果:

 

 你好 超人
Press enter to continue ...

分享到:
评论

相关推荐

    基于axis2的webservice

    创建一个简单的"HelloWorld"服务,定义一个接口,实现该接口的类,然后通过Axis2工具生成aar文件并部署到Axis2服务器。客户端通过SOAP请求调用服务,获取返回的"Hello, World!"信息。 总结,基于Axis2的Web服务...

    webservice_简介

    通过以上步骤,我们可以在Axis2服务器上部署一个简单的Webservice,并通过gSOAP客户端进行测试和调用。 综上所述,Webservice作为一种跨平台、跨语言的技术,通过WSDL、SOAP和XML等标准技术,实现了不同应用程序...

    webservice安装组件

    Web服务(WebService)是一种基于互联网的、平台独立的交互方式,它允许不同的应用程序之间进行通信和数据交换。在本文中,我们将深入探讨Web服务的安装组件及其重要性,以及如何在开发环境中设置和使用这些组件。 ...

    webservice测试demo.rar

    3. **客户端库的使用**:根据DEMO,可能使用了像 Axis2, JAX-WS, gSOAP 等工具或框架,这些工具可以帮助简化Web服务的调用过程。 4. **XML和XSD**:Web服务通常涉及XML数据交换,因此你需要理解XML的结构和XSD(XML...

    vc++连接webservice soap协议

    在实际开发中,为了简化流程,还可以使用第三方库,如gSOAP或Apache Axis C++,它们提供了更方便的SOAP客户端API,可以自动处理XML编码、解码和网络通信。 需要注意的是,进行SOAP通信时,必须确保与Web服务的版本...

    C++实现的基于Soap的计算器服务器

    2. **生成SOAP绑定代码**:使用GSOAP工具从接口头文件生成SOAP服务和客户端的代码。 3. **实现服务逻辑**:在生成的服务处理函数中填写实际的计算逻辑。 4. **启动HTTP服务器**:配置并启动HTTP服务器,监听指定端口...

    根据wsdl访问链接如何调用webService接口

    2. **解析WSDL**:使用SOAP库或者开发工具(如Apache CXF、axis2、gSOAP等)解析WSDL文件,生成客户端代理类或 Stub。这些类提供了与服务交互的方法。 3. **创建客户端**:在Java中,你可以使用JAX-WS(Java API ...

    android 4.项目

    使用了布局RelativeLayout,LinearLayout.包含ListActivity的使用,Spinner和ListView的使用,以及Notification,Toast,...并且还有ksoap2调用webservice(.net,axis2,gsoap2)的成功测试调用。包含单元测试代码

    java调用.net写的Webservice整理.pdf

    Java调用.NET编写的Web服务,主要是通过SOAP协议进行通信,这涉及到跨平台的互操作性。以下是关于这个主题的详细知识: 1. **SOAPAction HTTP Header**: SOAPAction HTTP请求头用于指示SOAP消息的目标,它的值是...

    一分钟学会用C++调用Web Service Demo程序源码

    2. **编译客户端代码**:接着,使用soapcpp2工具处理生成的头文件,生成C++源代码和库。这会创建一个客户端代理类,用于实际调用Web Service。 3. **编写应用逻辑**:在"WebServiceDemo.cpp"中,实例化客户端代理类...

    Onvif详细介绍

    - **重要性**:对于SOAP实现的WebServices而言,WSDL文档是必不可少的,因为它为客户端提供了一个明确的服务接口定义。 #### 四、ONVIF开发工具:gSOAP gSOAP是一款用于自动生成C/C++代码框架的工具,支持SOAP Web...

    Web Service入门经典

    - 在 Java 平台上,通常使用 JAX-WS 或者 Axis2 等工具。 - 对于跨平台的解决方案,有开源的工具如 Apache CXF 和 gSOAP。 总之,Web Service 是现代企业级系统集成的重要工具,通过标准化的接口和通信协议,实现...

    OperationXml.rar_xml/soap/webservice_Windows_Unix_

    而Unix环境,包括Linux和Mac OS X,常使用开源工具如Apache Axis、GSOAP或者Python的SOAP库(如suds-jurko)来处理XML和SOAP通信。尽管环境不同,但XML和SOAP的标准化特性确保了跨平台的兼容性。 在"OperationXml...

Global site tag (gtag.js) - Google Analytics