You are on page 1of 7

1.

Pengenalan Web Service


Definisi Web Service
Web service adalah suatu sistem perangkat lunak yang dirancang untuk
mendukung interoperabilitas dan interaksi antar sistem pada suatu jaringan. Web service
digunakan sebagai suatu fasilitas yang disediakan oleh suatu web site untuk menyediakan
layanan (dalam bentuk informasi) kepada sistem lain, sehingga sistem lain dapat
berinteraksi dengan sistem tersebut melalui layanan-layanan (service) yang disediakan
oleh suatu sistem yang menyediakan web service. Web service menyimpan data informasi
dalam format XML, sehingga data ini dapat diakses oleh sistem lain walaupun berbeda
platform, sistem operasi, maupun bahasa compiler.
Web service bertujuan untuk meningkatkan kolaborasi antar pemrogram dan
perusahaan, yang memungkinkan sebuah fungsi di dalam Web Service dapat dipinjam
oleh aplikasi lain tanpa perlu mengetahui detil pemrograman yang terdapat di dalamnya.
Beberapa alasan mengapa digunakannya web service adalah sebagai berikut:
1. Web service dapat digunakan untuk mentransformasikan satu atau beberapa bisnis
logic atau class dan objek yang terpisah dalam satu ruang lingkup yang menjadi satu,
sehingga tingkat keamanan dapat ditangani dengan baik.
2. Web service memiliki kemudahan dalam proses deployment-nya, karena tidak
memerlukan registrasi khusus ke dalam suatu sistem operasi. Web service cukup diupload ke web server dan siap diakses oleh pihak-pihak yang telah diberikan
otorisasi.
3. Web service berjalan di port 80 yang merupakan protokol standar HTTP, dengan
demikian web service tidak memerlukan konfigurasi khusus di sisi firewall.

Arsitektur Web Service


Web service memiliki tiga entitas dalam arsitekturnya, yaitu:
1. Service Requester (peminta layanan)
2. Service Provider (penyedia layanan)
4. Service Registry (daftar layanan)

Service Provider: Berfungsi untuk menyediakan layanan/service dan mengolah


sebuah registry agar layanan-layanan tersebut dapat tersedia.

Service Registry: Berfungsi sebagai lokasi central yang mendeskripsikan semua


layanan/service yang telah di-register.

Service Requestor: Peminta layanan yang mencari dan menemukan layanan yang
dibutuhkan serta menggunakan layanan tersebut.

Operasi-Operasi Web Service


Secara umum, web service memiliki tiga operasi yang terlibat di dalamnya, yaitu:
1.

Publish/Unpublish: Menerbitkan/menghapus layanan ke dalam atau dari registry.

2.

Find: Service requestor mencari dan menemukan layanan yang dibutuhkan.

3.

Bind: Service requestor setelah menemukan layanan yang dicarinya, kemudian


melakukan binding ke service provider untuk melakukan interaksi dan mengakses
layanan/service yang disediakan oleh service provider.

Komponen-Komponen Web Service

Web service secara keseluruhan memiliki empat layer komponen seperti pada
gambar di atas, yaitu:
1.

Layer 1: Protokol internet standar seperti HTTP, TCP/IP

2.

Layer 2: Simple Object Access Protocol (SOAP), merupakan protokol akses objek
berbasis XML yang digunakan untuk proses pertukaran data/informasi antar layanan.

3.

Layer 3: Web Service Definition Language (WSDL), merupakan suatu standar


bahasa dalam format XML yang berfungsi untuk mendeskripsikan seluruh layanan
yang tersedia.

UDDI adalah sebuah inisiatif industri terbuka, yang disponsori oleh Organisasi untuk
Kemajuan Structured Informasi Standar ( OASIS ), memungkinkan perusahaan untuk
mempublikasikan daftar layanan dan menemukan satu sama lain dan menentukan
bagaimana layanan atau aplikasi perangkat lunak berinteraksi melalui Internet.
Web Service adalah sekumpulan application logic beserta object-object dan methodmethod yang dimilikinya yang terletak di suatu server yang terhubung ke internet
sehingga dapat diakses menggunakan protocol HTTP dan SOAP ( Simple Object Access
Protocol ). Dalam penggunaannya, web service dapat digunakan dari hanya untuk
memeriksa data user yang login ke sebuah web site ataupun untuk digunakan pada
transaksi perbankan on-line yang rumit.

Tujuan dari teknologi ini adalah untuk memudahkan beberapa aplikasi atau
komponennya untuk saling berhubungan dengan aplikasi lain dalam sebuah organisasi
maupun diluar organisasi menggunakan standar yang tidak terikat platform ( platformneutral ) dan tidak terikat akan bahasa pemrograman yang digunakan ( language-neutral
).
Hal tersebut dapat terjadi karena penggunaan XML standar yang didukung oleh banyak
perusahaan besar di dunia, yang digunakan untuk bertukar data. Selain daripada itu,
penggunaan SOAP menjadikan method-method dari object-object yang ada dalam sebuah
web service dapat di akses dari aplikasi lain seperti halnya aplikasi tersebut mengakses
method lokal.

Simple Object Access Protocol (SOAP)


Konsep Dasar SOAP
SOAP singkatan dari Simple Object Access Protocol. SOAP adalah protokol untuk
pertukaran informasi dengan desentralisasi dan terdistribusi. SOAP dibangun dengan
menggunakan protokol komunikasi HTTP. Karena HTTP didukung oleh semua browser
dan server, maka SOAP dapat berkomunikasi dengan berbagai aplikasi meskipun
terdapat perbedaan sistem operasi, teknologi, dan bahasa pemrogramannya.
Peran SOAP di dalam teknologi web service adalah sebagai protokol pemaketan untuk
pesan-pesan (messages) yang digunakan secara bersama oleh aplikasi-aplikasi
penggunanya. Spesifikasi yang digunakan tidak lebih seperti sebuah amplop biasa
berbasis XML untuk informasi yang ditransfer, serta sekumpulan aturan bagi translasi
aplikasi dan tipe-tipe data platform yang spesifik menjadi bentuk XML. Desain bentuk
dari SOAP membuatnya cocok untuk berbagai pertukaran pesan pada aplikasi.
Pesan SOAP
Sebuah pesan SOAP adalah sebuah dokumen XML yang berisi elemen-elemen berikut:
1. Envelope element yang mengidentifikasi dokumen XML sebagai sebuah pesan
SOAP.
2. Elemen header yang berisi informasi header. Elemen ini bersifat opsional.
3. Elemen body yang berisi panggilan dan merespon informasi.
4. Fault element yang berisi pesan kesalahan yang terjadi pada waktu proses.
Elemen ini opsional.
Berikut struktur utama pesan SOAP:

NuSOAP
NuSOAP adalah library yang digunakan untuk membangun web service berbasis SOAP
yang ditulis dengan menggunakan bahasa PHP. NuSOAP ditulis oleh Dietrich Ayala
dengan proyek awal bernama SOAPx4. Selanjutnya dia disewa NuSphere untuk terus
mengembangkan proyek tersebut dan diberi nama NuSOAP.
Dalam membangun sebuah sistem aplikasi berbasis web service, dibutuhkan dua
komponen utama yaitu, server sebagai provider entity dan client sebagai requester
entity . Sebagai contoh, di bawah ini terdapat dua listing program pada sisi server dan sisi
client. Berikut contoh implementasi NuSOAP pada sisi server:
Kode Program File server.php
<?php
require_once(nusoap.php);
$server = new soap_server;
$server->register(hello);
function hello($name) {
return Hello, . $name;
}
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ?
$HTTP_RAW_POST_DATA :
;
$server->service($HTTP_RAW_POST_DATA);
?>
Berikut implementasi NuSOAP untuk sisi klien:
Kode Program File client.php

<?php
require_once(nusoap.php);
$client = new soapclient(http://localhost/soap/server.php);
$result = $client->call(hello, array(name => $_GET['name']));
echo $result;
?>
Berikut ini tampilan di web browser dari web service yang dijalankan antar dua file
server.php dan client.php tersebut:
Tampilan Web Service sederhana dengan PHP

Kepada:
Yth. Ketua Bagian Penerbitan, CV. Andi Offset
di Yogyakarta
Saya ingin menawarkan naskah tulisan saya (orisinil) untuk di-publish di Andi Offset.
Materi yang diangkat adalah kategori pemrograman web dengan judul :
"Teknik Pemrograman Web Service PHP Dengan Menggunakan SOAP dan WSDL"
Adapun biodata saya, adalah sbb:
---------------------------------------Nama: Yadi Utama, S.Kom, M.Kom.
Alamat: Jl. Kaliurang KM.4,5 Yogyakarta
Pekerjaan: Web programmer di PT. Gamatechno Indonesia
Saya lampirkan juga file abstrak naskah dan CV. Atas perhatiannya saya ucapkan banyak
terima kasih.

ttd
Yadi Utama