Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[13447] SOAP 기반 DataSnap 사용시...
브리오 [egsuh] 2150 읽음    2010-10-24 15:50
안녕하세요.. DataSnap Soap 서버를 작성하다 진행이 되지 않아서 올립니다.

Delphi 7 사용하고 있구요,

==== 서버 사이드
1)  New application 을 만듭니다 --- New>Others>Web services tab>SOAP SERVER APPLICATION 으로 해서, 새로운 project 를 하나 생성하고,
2) 여기에 SOAP Data Module 추가합니다. (역시 New>Others>Web services tab>Soap Data Module 을 추가해서, 기 존 프로젝트에 unit 하나가 추가되죠).  Interface 이름을 IDataMod라고 가정합니다.  이 data module 에 dataset (Interbase 하고 dbExpress 에 있는 것 다 해 봤습니다)하고, Dataset provider 를 추가합니다.  DataSet에 query 문 같은 것을 지정합니다.

=== 클라이언트
3) Client 프로그램 만듭니다. 보통 project 파일 하나 만들고 여기에 SoapConnection 을 하나 추가하고, ClientDataset 하나 추가합니다.
4)  WSDL Importer 를 사용해서 서버의 Interface 를 받아오려 합니다. ...

자, 여기서

1.  위의 4) 번 단계에서 난감한 에러가 발생합니다. 우선
    IDataMod = interface
    [GUID....]
    end;

   까지가 자동 생성되죠. 여기서 위의 4)번 Import 를 시도하면 에러가 납니다 .
 
   그래서 임의로 method 를 하나 추가합니다.

    IDataMod = interface
    [GUID....]

    function DefaultAction : boolean; stdcall;
    end;

   물론 아래의 TDataMod.. 에서도 정의하고 implementation 부분에서도 작성합니다.

   이렇게 하면 에러가 발생하지 않습니다. 그런데 여기에 method 를 하나 이상 추가하면 또 에러가 납니다.

   또 이 경우, 하나의 method 만 정의하여 제대로 받아두고, client 프로그램에서 수동으로 추가해 주고 (당연히
   서버측에도 똑같이 추가하고) 컴파일 해서 실행하면 상관없이 수행됩니다.


2.   일단 위 단계는 method 하나만 정의를 하고 진행해 봤습니다.

     대충 틀을 짠 다음,  클라이언트에서 clientdataset1.Open 이라는 명령을 줍니다. 그런데,

    1)  위 서버를 CGI 프로그램, 즉 .exe 파일로 만든 경우에는 에러없이 작동합니다.
    2) 그런데 DLL로 compile 하면 에러가 발생합니다.  에러 메시지는,
 
       "Received content of Invalid Content-Type setting:text/html - SOAP expects text/xml"이라고 뜹니다.

 
계속 여기서 막혀서 진행이 되지 않네요. 도움 부탁드립니다.

+ -

관련 글 리스트
13447 SOAP 기반 DataSnap 사용시... 브리오 2150 2010/10/24
13448     Re:SOAP 기반 DataSnap 사용시... (자답) 브리오 2476 2010/10/24
13449         Re:Re:SOAP 기반 DataSnap 사용시... (자답) 브리오 1806 2010/10/26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.