묻고답하기

IIS의 웹서비스에 PHP로 통신을 해야 합니다.

IIS의 웹서비스를 개발한 회사에서 API를 줬는데...
GET,POST,SOAP 으로 통신이 가능합니다.
GET은 데이터 양때문에 사용못하구요...
POST로 구현을 했는데... 사정상 SOAP을 써야하는 상황이 생겨버렸네요... 우잉...

개발 환경은 제 PC에 IIS 와 웹서비스를 올렸구요.
APM 설치해서 8080 포트로 돌리고 있구요.
php에서 soap 관련 항목 enable 시켰습니다.

그들이 준 SOAP 에 관한 API는 딸랑... 아래와 같습니당... -_-

====================================================
POST /wcs/VICE.asmx HTTP/1.1
Host: localhost
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://creo.com/webservices/vice/StreamingCreateOutputFile"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <StreamingCreateOutputFile xmlns="http://creo.com/webservices/vice">
      <Priority>Low or High</Priority>
      <SessionID>string</SessionID>
      <viceConfiguration>xml</viceConfiguration>
      <output_folder>string</output_folder>
      <output_name>string</output_name>
    </StreamingCreateOutputFile>
  </soap:Body>
</soap:Envelope>

====================================================

저는 Priority, SessionID, viceConfiguration, output_folder, output_name
을 적당한 값으로 전송해 줘야 하는데... 이 API를 보고 soap client를 어찌 만들어야 하는지 모르겠네요.

  $client = new SoapClient("http://localhost/wcs/VICE.asmx?WSDL",
                array("trace" => 1, "exceptions" => 0 ));

위에서 처럼 클라이언트를 만들었습니다.

그리고...

$Priority = "High";
$SessionID = "123456789";
$output_folder = "D:OUTPUT";
$viceConfiguration = "<?xml version='+ '+ '1.0' encoding='utf-8'?> 어쩌구 저쩌구...";
$output_name = "soaptest";

이렇게 변수 설정해서...

$soapstr =
"<?xml version='1.0' encoding='utf-8'?>
<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='+ 'http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>
  <soap:Body>
    <StreamingCreateOutputFile xmlns='http://creo.com/webservices/vice'>
      <Priority>".$Priority."</Priority>
      <SessionID>".$SessionID."</SessionID>
      <viceConfiguration>".$viceConfiguration."</viceConfiguration>
      <output_folder>".$output_folder."</output_folder>
      <output_name>".$output_name."</output_name>
    </StreamingCreateOutputFile>
  </soap:Body>
</soap:Envelope>";

이렇게 API 비스무리하게 만들어서...

$detail = $client->StreamingCreateOutputFile($soapstr);

이렇게 웹서비스를 호출했거든요...
결과는... 에러... T_T

에러 메시지는 이렇게 나오네요...
    [message:protected] => System.Web.Services.Protocols.SoapException: Object reference not set to an instance of an object.
  at DarwinVICE.VICE.BeginStreamingCreateOutputFile(WorkItemPriority Priority, String SessionID, XmlNode viceConfiguration, String output_folder, String output_name, AsyncCallback cb, Object s)

API만 봐서는... AsyncCallback cb, Object s (이 2변수 뭔지도 모르겠군요... -_-)
위 변수 2개는 않보내도 될것 같은데...

API의 상단 4줄...
===============================================
POST /wcs/VICE.asmx HTTP/1.1
Host: localhost
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://creo.com/webservices/vice/StreamingCreateOutputFile"
===============================================
이것들은 어쩌라는 건지 모르겠네요... -_-
SOAP 으로 통신하는것도 저런것들을 어딘가에 세팅해야 하나요?


이거 당췌 모르겠군요... 흠...
제발 도움 부탁드립니다~
글쓴이 제목 최종 글
XE 공지 글 쓰기,삭제 운영방식 변경 공지 [16] 2019.03.05 by 남기남
채민욱 Apache 설치가 안됩니다...  
박군의그녀 자바스크립트 [3] 2007.08.10
이민구 정말 문제는 단순하고 간단한데..해결이 안되는 문제..  
한진웅 회원가입 폼 같은건 아이프레임으로 불러 오는건가요?? [1] 2007.08.10
이상훈 제로보드 게시판 인쿠르드시 웹페이지 경로 변경 수정하는 법좀... [1] 2007.08.10
이청호 phpMyAdmin으로 복구중 일부 화일이 제거가 안됩니다...  
아이퀘스트 공개자료실에 프로그램을 올리려고 하는데 용량이 20메가로 제한이 걸려있더군요 [1] 2007.08.10
은섭 다음 에러 메세지를 고칠려면~~~ 부탁 드립니다 [1] 2007.08.10
▩†슈터†▩ HTML 표 관련 질문 입니다. [4] 2007.08.10
윤동희 플레쉬에서...  
이광일 [Flash] 플래쉬 갤러리에서 소스수정 질문입니다...  
momoforu 링크된 사진 크기 변경 관련 질문 [1] 2007.08.10
베티 주소고정한 main페이지에 아이프레임이 있을 경우 [1] 2007.08.10
종달이 제가 제공받고있는 서버가 이상합니다..  
지키리 움직이는 레이어가 게시판에서는 먹질 않습니다. [1] 2007.08.10
park embed명령으로 플래시(swf)불러올때...  
홍현기 제로보드 서버 오류 좀 봐주세요..  
임승모 SOAP 살려주세요... T_T  
이강우 플래시 액션스크립트 기초적인질문인데요..랜덤값줄때에..  
정승영 PHP를 공부하고 있는데요. [1] 2007.08.10
응가응가 이미지 링크시 이미지에 테두리가 생깁니다. [3] 2007.08.10
선희 마우스로 드래그해서 태그적용되게  
노형철 마우스오버 한 레이어의 위치가.. 게시판이 들어간 페이지에서는 다른곳에 뜹니다.  
▩†슈터†▩ 홈페이지 보안관련이라고나 할까요.. 질문입니당, [1] 2007.08.10
노형철 마우스오버 한 레이어의 위치가.. 게시판이 들어간 페이지에서는 다른곳에 뜹니다.  
워니 "Haru Communication에서 배포한..... [1] 2007.08.10
제이크 자바스크립트 메뉴가 게시판의 글쓰기 또는 글읽기를 선택했을때 작동되지 않아요ㅜㅜ [4] 2007.08.10
김미영 write.php오류  
제이크 include를 이용한 index.html 페이지를 만드는데 경로 지정 질문이요.. [1] 2007.08.10
박군의그녀 마우스오버와 클래스 [2] 2007.08.10