Oleh : Reza Ervani
بسم الله الرحمن الرحيم
Envelope SOAP mengindikasikan awal dan akhir pesan sehingga penerima tahu kampan seluruh pesan telah diterima. SOAP envelope memecahkan masalah mengetahui kapan kita selesai menerima pesan dan siap untuk memprosesnya. Karenanya SOAP envelope adalah dasar dari seluruh mekanisme pemaketan
Elemen SOAP dapat dijelaskan sebagai berikut :
- Setiap pesan SOAP memiliki elemen root Envelope
- Elemen Envelope adalah bagian mandatory dari pesan SOAP
- Setiap elemen Envelope mesti berisi hanya satu elemen Body
- Jika suatu Envelope berisi suatu elemen Header, dia mesti berisi tidak lebih dari satu, dan itu mesti tampak sebagai turunan pertama dari Envelope sebelum Body
- Envelope berubah saat versi SOAP berubah.
- Envelope SOAP dispesifikasikan menggunakan prefix namespace ENV dan elemen Envelope
- Enkoding opsional SOAP juga dispesifikasikan menggunakan suatu nama namespace dan elemen opsional encodingStyle, yang juga dapat menunjuk ke suatu cara enkoding selain SOAP.
- prosesor SOAP yang cocok dengan v1.1 akan menghasilkan suatu kesalahan saat menerima pesan yang berisi namespace envelope v1.2
- Prosessor SOAP yang cocok dengan v1.2 akan menghasilkan pesan kesalahan VersionMismatch fault jika dia menerima pesan yang tidak menyertakan namespace envelope v1.2
Contoh envelope v1.2 tampak seperti berikut :
<?xml version="1.0"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2001/12/soap-envelope" SOAP-ENV:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> ... Informasi pesan diletakkan disini ... </SOAP-ENV:Envelope>
Contoh berikut mengilustrasikan penggunaan suatu pesan SOAP didalam operasi POST HTTP, yang mengirimkan pesan ke server. Dia mnunjukkan namespace untuk definisi skema envelop dan definisi skema aturan enkoding. OrderEntry yang direferensikan pada header HTTP adalah nama program yang dinyalakan di website programming.rezaervani.com
POST /OrderEntry HTTP/1.1 Host: www.programming.rezaervani.com Content-Type: application/soap; charset="utf-8" Content-Length: nnnn <?xml version="1.0"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2001/12/soap-envelope" SOAP-ENV:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> ... Informasi pesan berada disini ... </SOAP-ENV:Envelope>
CATATAN : HTTP binding menspesifikasikan lokasi dari layanan
Leave a Reply