Pengertian Simple Object Access Protocol (SOAP)

SOAP atau sngkatan dari Simple Object Access Protocol adalah sebuah standarisasi dasar dari protokol komunikasi untuk saling bertukar informasi terstruktur di antara aplikasi-aplikasi yang berjalan. SOAP bisa di sebut juga sebagai aplikasi pesan dari sebuah XML yang sangat bergantung pada skema XML dan XML namespaces untuk mendefinisikannya. SOAP dalam hal ini sangat bergantung pada protokol layer lainnya, seperti pada JMS, HTTP, dan RPC untuk transmisi pesan.
SOAP hampir sama dengan dengan protokol XMLRP hanya saja pada SOAP lebih cocok digunakan untuk data kompleks yang dikirim antar client server. Secara konseptual SOAP dapat dianggap sebagai DCOM versi XML. SOAP merupakan mekanisme lain yang memungkinkan penggunaan remote procedure call. SOAP bersifat netral platform, netral bahasa dan tidak bergantung pada suatu objek model. Sehingga SOAP-enabled distributed application dapat menjangkau beragam operating sistem, dimana terdiri dari objek yang berasal dari vendor yang berbeda, ditulis pada bahasa yang berbeda, dan didasarkan pada objek model yang berbeda.

ARSITEKTUR SOAP

SOAP

SOAP

Pesan SOAP berbentuk seperti sebuah envelope yang berisi header (optional) dan body (required). Header berisi blok informasi yang berhubungan dengan bagaimana pesan tersebut diproses. Hal ini meliputi pe-routingan dan delivery setting, authentication atau authorization assertions, and transaction contexts. Body berisi pesan sebenarnya yang dikirim dan diproses. Semua yang dapat ditampilkan dengan sintaks XML dapat dimasukkan dalam pesan body.

Setiap elemen Envelope harus berisi tepat satu elemen Body. Elemen Body dapat berisi sebanyak mungkin child nodes yang diperlukan. Isi dari elemen Body adalah pesan. Elemen Body ditentukan dalam suatu cara dimana dapat berisi valid dan wellformed XML yang telah dibatasi oleh suatu namespace (qualified).

Jika sebuah Envelope berisi elemen Header, harus berisi tidak lebih dari satu, dan harus tampak pada first child dari Envelope, sebelum elemen Body. Header dapat berisi valid, well-formed, dan dibatasi dengan namespace XML dimana hendak dimasukkan oleh pencipta pesan SOAP.

Setiap elemen yang berada dalam Header disebut blok header. Tujuan dari blok header adalah untuk memberitahukan infomasi yang berhubungan dengan pemrosesan pesan SOAP.

CONTOH PENERAPAN SOAP PADA JAVA

KELAS SOAP

Gambar Kelas Web Service (ATAS)

Deklarasi WEB METHOD
Gambar Deklarasi Web Method WSDL (ATAS)

Contoh Penerapan SOAP Pada JAVA

Contoh Penerapan SOAP Pada JAVA

Diatas merupakan contoh penerapan SOAP pada java.

KEUNTUNGAN DAN KEKURANGAN

Keuntungan dari SOAP

Format yang sederhana dan dapat dikembangkan
Bisa dijalankan dimana saja tidak terbatas pada platform tertentu
Bisa menggunakan bahasa pemrograman apa saja
Multi-protocol seperti HTTP, JMS, RPC, SMTP, dll.
Dapat melewati firewalls sehingga mendukung model HTTP get / reponse
Tipe yang kuat dan melekat pada sebuah kontrak

Kekurangan dari SOAP

Walaupun sederhana, pesannya dapat panjang karena kebutuhannya untuk mengemasnya dalam bentuk SOAP envelope
Karena SOAP berbasis XML, dibutuhkan waktu untuk parsing XML tersebut karena harus di kedua pihak melakukannya (pengirim dan penerima pesan)
Walaupun SOAP standart yang terbuka, tidak semua bahasa mendukung dengan baik. Yang terbaik untuk mendukung SOAP adalah JAVA, .Net, dan Flex

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s