Ringkasan dokumen tersebut adalah:
1. Dokumen tersebut membahas tentang protokol SOAP dan penggunaannya dalam web service.
2. Dijelaskan anatomi pesan SOAP, elemen-elemennya seperti header, body, fault, dan pengkodeannya.
3. Juga dibahas cara menggunakan pesan SOAP untuk memanggil prosedur remote secara RPC.
1. Oleh :
Toni Wijanarko Adi Putra, S.Kom., M.Kom
e_mail : t_wijanarko@yahoo.com
HP : 085742992199
Program Studi Teknik Informatika
Teknologi Web Service SOA dengan XML
MATERI / PERTEMUAN :
Simple Object Access Protocol (SOAP)
2
2. Mahasiswa mampu menjelaskan SOAP dan
dapat menggunakannya.
Diharapkan mahasiswa dapat menjelaskan Inti dari
layanan SOAP, Spesifikasi SOAP, Anatomi Pesan
SOAP, SOAP Actors, Elemen Geader, Atribut
mustUnderstand, Atribut Actor, Elemen Body, Elemen
Fault, SOAP Encoding, Tipe tipe Sederhana, Tipe
Campuran, Struktur, Arry, Optimisasi, Actor Root,
Pengikatan Protokol.
CP dan KAD
3. Inti dari layanan Web adalah SOAP yang menyediakan sebuah cara
standar untuk memaketkan pesan. SOAP menarik banyak perhatian
karena memfasilitasi komunikasi bergaya RPC antara client dan
server remote. Namun, sudah banyak protokol yang dibuat untuk
memfasilitasi komunikasi antara dua aplikasi, termasuk Sun's RPC,
Microsoft's DCE, JAVA's RMI, dan CORBA's ORPC.
Simple Object Access Protocol (SOAP)
4. • d
•SOAP berpasangan erat dengan satu bahasa.
•SOAP tidak berpasangan erat dengan protokol
transpor tertentu.
•SOAP tidak terpaku pada satu infrastruktur
objek terdistribusi manapun.
•SOAP mempengaruhi berbagai standar industri
yang ada.
•SOAP memungkinkan kerja sama ke beberapa
lingkungan sekaligus.
5. Aspek-aspek kunci pada spesifikasi SOAP
1.SOAP envelope.
2.SOAP Encoding.
3.Pesan-pesan bergaya-RPC
4.Pengikatan protokol HTIP POST.
14. Elemen Body
Pesan SOAP yang sah harus mempunyai satu elemen Body.
Tubuh tersebut berisi muatan pesan. Tidak ada batasan
tentang bagaimana tubuh tersebut dapat dikodekan. Pesan
tersebut dapat berupa sebuah string sederhana dari karakter-
karakter, array byte yang telah dikodekan, atau XML. Satu-
satunya persyaratan adalah bahwa isinya tidak boleh
mempunyai karakter yang akan membatalkan dokumen
XML yang dihasilkan.
16. Kode-Kode Kesalahan Dasar SOAP
Kode Kesalahan Keterangan
VersionMismatch Sebuah namespace invalid untuk elemen amplop SOAp yang telah disebutkan.
MustUnderstand Sebuah elemen anak, langsung dalam header SOAP yang berisi sebuah atribut
mustUnderstand yang diatur ke 1 dan tidak dimengerti atau diabaikan oleh server.
Client Isi pesan ditemukan sebagai akar penyebab dari kesalahan. Tampaknya, root yang
menyebabkan kesalahan yang dihasilkan dalam kode kesalahan Client berisi sebuah
pesan malformed atau informasi tidak lengkap dalam pesan.
Server Akar penyebab kesalahan tidak secara langsung bersifat mudah diatributkan pada isi
pesan. Contoh-contoh kesalahan yang dihasilkan dalam kode kesa lahan Server,
termasuk server yang tidak dapat mengambil sumber daya yang sesuai (seperti
misalnya koneksi database) untuk memproses pesan atau sebuah kesalahan logika saat
memproses pesan.
17. Jika server tidak dapat membuka sebuah koneksi database yang diperlukan untuk
memproses pesan client, kode kesalahan berikut akan dihasilkan:
<faultcode>
Server.Database.Connection
</faultcode>
18. Elemen faultstring akan memuat sebuah string yang dapat kita mengerti dan
menjelaskan kesalahan yang ditemui. Berikut ini nilai faultstring untuk kesalahan
koneksi ke database:
<faultstring>
Unable to open connection to the database
</faultstring>
21. Add2 mengembalikan jumlah dari dua angka lewat sebuah parameter output.
public int Add2(int x,int y,out int sum)
{ Sum=x +y; return sum; }
Memanggil Add2(1, 2) menghasilkan pesan SOAP berikut ini:
<?xml version="l.O" encoding=="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xml soap.org/soap/envelope/">
<soap:Body>
<Add2>
<x>1</x>
<y>2</y>
</Add2>
</soap:Body>
</soap:Envelope>
23. SOAP Encoding
Tipe-Tipe Sederhana
Tipe-tipe sederhana termasuk berbagai string, integer,
date/time, Boolean, dan banyak lagi.
Tipe Campuran
Seringkali, tidak cukup menyalurkan tipe-tipe sederhana,
seperti misalnya integer dan string sebagai parameter. Anda
perlu juga menyalurkan tipe-tipe campuran seperti misalnya
struktur atau array.
24. Struktur
Struktur adalah sebuah koleksi tipe yang bertindak sebagai
template bagi catatan pengelompokkan data secara logis.
Sebagai contoh, anggaplah Anda perlu membuat sebuah
fungsi yang menghitung volume sebuah balok padat. Daripada
menyalurkan panjang, lebar, dan tinggi balok pada sebuah
parameter terpisah, Anda dapat secara logika
mengelompokkan data dimensi ke dalam sebuah struktur
RectSolid. Kemudian, metode yang menghitung. volume isi
dapat menerima sebuah syarat struktur RectSolid. Berikut ini
adalah sebuah contohnya:
25. Public struct RectSolid
{ public int length;
public int width;
public int height; }
public int CalcVolume(RectSolid r)
[
return(r.length *r.width *r.height);
]
<?xml version="l. O" encoding=="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xml
soap.org/soap/envelope/">
<soap:Body>
<CalcVolume>
<r>
<length>2</length>
<width>3</width>
<height>l</height>
</r>
</CalcVolume>
</soap:Body>
</soap:Envelope>
26. Array
Data campuran lainnya yang umum adalah array. Spesifikasi XML tidak
menyebutkan cara sebuah array dikodekan. Spesifikasi SOAP 1.1
mengisi kekosongan ini. Contohnya adalah sebagai berikut:
Public int Add Array (int [] numbers))
{ int total=O;
foreach(int number in numbers) {
total +=n umber; }
return total;
27. Berikut ini adalah caranya supaya client dapat memanggil
fungsi AddArray:
int [] a == {1,2,3);
int total;
total =AddArray (a);
30. Kelebihan dari protokol HTTP di antaranya:
• Firewall-friendly, protokol-protokol lama seperti misalnya DCOM
(Distributed Component Object Model) tidak termasuk. Sebagian besar
firewall mempunyai port 80, setidaknya yang terbuka untuk lalu lintas
HTTP.
• Mempunyai infrastruktur pendukung yang mantap. Sudah diperkenalkan
banyak teknologi untuk meningkatkan kemampuan penyesuaian dan
penemuan aplikasi-aplikasi berbasis-HTTP.
• Bersifat stateless secara inheren. Sifat stateless dari HTTP membantu
memastikan bahwa komunikasi antara client dan server terjaga, khususnya
lintas internet. Koneksi-koneksi yang tiba-tiba drop mengakibatkan
permasalan bagi protokol-protokol seperti DCOM dan CORBA
31. TUGAS MEMBUAT MAKALAH
Tugas untuk setiap Mahasiswa
Merangkum Pertemuan Hari ini
Makalah di ketik dengan MS Word font “ARIAL” ukuran huruf 10, dengan jarak antar baris 1,5
spasi,
Buat Slide Presentasi Menggunakan Power Point
Di Email
Contoh Isi makalah :
PENDAHULUAN
ISI
RINGKASAN
DAFTAR PUSTAKA ( selain daftar pustaka dalam slide ini)
32. Sumber Kepustakaan :
•XML, Step by Step, Michael J. Young,
•Bulding XML Web Service for the Microsoft .NET
Platform, by Microsoft Corporation Published by
Microsoft Press
•Microsoft ASP.NET, Step by Step, G. Andrew
Duthie