gsoap 에 대해서 기본적인 것 부터 시작해보자
http://www.cs.fsu.edu/~engelen/soap.html
본 글에서부터는 오로지 C++에 대해서만 언급한다. 물론 gsoap 은 C 로도 프로그래밍이 가능하지만, C++로 하는것이 왠지..
그리고 soap에 대해서는 다루지 않는다.
gsoap을 하기위해서는 기본적으로 wsdl2h와 soapcpp2를 이용하여 wsdl, schema로부터 데이터를 바인딩하고(헤더파일 생성) soapcpp2로 stub, skeleton 코드(서버, 클라이언트 베이스) 를 생성한다는 것... ^^
- The wsdl2h WSDL/schema importer and data binding mapper tool.
- The soapcpp2 stub/skeleton compiler and code generator
오늘은 간단히 gsoap을 이용하여 사칙 연산을 해보도록 하겠다.
1. wsdl2h -s -o calc.h http://www.genivia.com/calc.wsdl
==> calc.wsdl 를 참고하여 calc.h 를 생성한다. 데이터 구조..
2. soapcpp2 -i -C calc.h
==> 여러 파일들이 생성될 것이다. xml, proxy 파일, soap 정의 등
3. test.c 만들기
#include "soapcalcProxy.h"
#include "calc.nsmap"
int main()
{
calcProxy service;
double result;
if (service.add(1.0, 2.0, result) == SOAP_OK)
std::cout << "The sum of 1.0 and 2.0 is " << result << std::endl;
else
service.soap_stream_fault(std::cerr);
service.destroy(); // delete data and release memory
}
test.cpp로 저장하고
g++ test.cpp soapcalcProxy.cpp soapC.cpp -lgsoap++ 로 컴파일 하면 끝...
간단하다.
4. ./a.out 실행 결과
calc3$ ./a.out
The sum of 1.0 and 2.0 is 3
'Programming' 카테고리의 다른 글
현재 네트워크에서 DHCP 서버가 동작되고 있는지 확인? (0) | 2014.08.18 |
---|---|
gsoap (2) (1) | 2014.03.12 |
stub & skeleton 이해하기 (0) | 2013.10.28 |
[C Programming] Struct Hack (0) | 2013.08.15 |
Software Versioning (소프트웨어 버전규칙) (0) | 2013.08.07 |