출처 : http://www.okjsp.pe.kr/seq/76532
SOAP의 개념
1. Request(요청)는 이렇게 합니다.
POST /mysite/test.jsp HTTP/1.1
Host: xxx.xxx.co.kr
Content-Type: text/xml
Charset="KSC5601"
Content-Length:
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http:schemas.xml.soap.org/soap/envelope/"
SOAP-ENV:ENCODINGStyle="http://schemas.xmlsoap.org/soap/ENCODING/">
<SOAP-ENV:BODY>
<m:testSoap xmlns:m="my-namespace">
<user_name>tester</user_name>
<nick_name>abysslover</nick_name>
</m:testSoap>
</SOAP-ENV:BODY>
</SOAP-ENV:Envelope>
2. 응답으로 오는 내용
HTTP/1.1 200 OK
Content-Type: text/xml
Charset="KSC5601"
Content-Length:
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
SOAP-ENV:ENCODINGStyle="http://schemas.xmlsoap.org/soap/ENCODING/">
<SOAP-ENV:BODY>
<m:testSoapResponse xmlns:m="my-namespace">
<result>Your name is 임은천</result>
</m:testSoapResponse>
</SOAP-ENV:BODY>
</SOAP-ENV:Envelope>
3. 위의 내용을 실제로 전송해 보자.(자바 스크립트)
var testSoapClient = new ActiveXObject("Microsoft.XMLDOM");
var msg;
msg = '<?xml version="1.0"?';
msg += '
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http:schemas.xml.soap.org/soap/envelope/"
SOAP-ENV:ENCODINGStyle="http://schemas.xmlsoap.org/soap/ENCODING/">
<SOAP-ENV:BODY>
<m:testSoap xmlns:m="my-namespace">
<user_name>tester</user_name>
<nick_name>abysslover</nick_name>
</m:testSoap>
</SOAP-ENV:BODY>
</SOAP-ENV:Envelope>';
testSoapClient .loadXML(xml);
var msgSender = new ActiveXObject("Microsoft.XMLHTTP");
msgSender.open("POST", "/mysite/test.jsp", false);
msgSender.setRequestHeader("SOAPMethodName", "testSoap");
msgSender.setRequestHeader("Content-Type", "text/xml-SOAP");
msgSender.send(msg.xml);
var receiver = new ActiveXObject("Microsoft.XMLDOM");
receiver.loadXML(msg.responseXML.xml);
'웹서비스' 카테고리의 다른 글
[JSP] XML 통신 예제 (0) | 2010.06.30 |
---|---|
[JSP] XML 읽기 (0) | 2010.06.30 |
[JAVA] XML-RPC (0) | 2010.06.30 |
HTTP/XML 기반 (0) | 2010.06.30 |
[Java] XML Validation 비활성화 하기 (0) | 2010.06.29 |