• Tidak ada hasil yang ditemukan

Membangun Web Service Client Dan Server Dengan Menggunakan (Siti Melissa Futri_09071003012)

N/A
N/A
Protected

Academic year: 2021

Membagikan "Membangun Web Service Client Dan Server Dengan Menggunakan (Siti Melissa Futri_09071003012)"

Copied!
14
0
0

Teks penuh

(1)

Tugas Sistem Informasi Berbasis Web

Tugas Sistem Informasi Berbasis Web

Membangun Web Service

Membangun Web Service

Client dan Server dengan

Client dan Server dengan

Menggunakan

Menggunakan

NuSOAP Service

NuSOAP Service

N

Na

am

ma

a

:

: S

Siitti

i M

Me

elliis

ss

sa

a F

Fu

uttrrii

N

Niim

m

:

: 0

09

90

07

71

10

00

03

30

01

12

2

K

Ke

ella

as

s

:

: S

Siis

stte

em

m IIn

nffo

orrm

ma

as

si

i 6

6B

B

Fakultas Ilmu Komputer

Fakultas Ilmu Komputer

Universitas Sriwijaya

(2)

Tugas Sistem Informasi Berbasis Web

DAFTAR ISI

Daftar Isi……….2 Pendahuluan………3 Web Service……….……….. 3 XML…..……… 3

SOAP dan NuSOAP………. 4

(3)

Tugas Sistem Informasi Berbasis Web

Membangun Web Service Client dan

Server dengan Menggunakan NuSOAP

Service

PENDAHULUAN

Konsep teknologi Web Service muncul untuk mendukung sistem terdistribusi yang  berjalan pada infrastruktur yang berbeda. SOAP (Simple Object Application Protocol ) yang

merupakan kombinasi dari XML (eXtensible Markup Language) yang dikirimkan melalui HTTP ( HyperText Transport Protocol ).

Dengan adanya kombinasi antara XML dan HTTP, web service yang berbasiskan XML sangat mungkin untuk diimplementasikan sehingga menjanjikan banyak kemudahan dan perbaikan dalam mendukung integrasi berbagai platform system dan aplikasi, baik  melalui infrastruktur intranet maupun internet/ekstranet.

WEB SERVICE

Web service merupakan salah satu sistem perangkat lunak yang

menginteroperabilitaskan berbagai sistem lainnya pada jaringan internet. Dengan adanyaweb  service, sebuah sistemwebdapat berbagi informasi maupun fungsionalitas (remote

 procedure call ) dari setiap sistem dalam hubungan server dan client .

Konsep utama web service adalah bagaimana suatu data/informasi yang ada bias  berkomunikasi tanpa ada halangan yang merintang baik dari segi platform maupun database.

Kita harus memiliki file di sisi server yang mengakses server bersangkutan dan file di sisi client yang akan menjalankan perintah-perintah atau service yang telah di daftarkan di sisi server. Kelemahanweb service pada umumnya terletak pada keamanan pertukaran data.

XML

XML merupakan dasar terbentuknya web service yang digunakan untuk 

mendeskripsikan data. Pada level paling detail web service secara keseluruhan dibentuk  diatas XML. Fungsi utama dari XML adalah komunikasi antar aplikasi, integrasi data, dan komunikasi aplikasi eksternal dengan partner luaran. Dengan standarisasi XML, aplikasi-aplikasi yang berbeda dapat dengan mudah berkomunikasi antar satu dengan yang lain.

(4)

Tugas Sistem Informasi Berbasis Web

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 semuabrowser 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.

SOAP Syntax Rules

· A SOAP message MUST be encoded using XML

· A SOAP message MUST use the SOAP Envelope namespace · A SOAP message MUST use the SOAP Encoding namespace

· A SOAP message must NOT contain a DTD reference

· A SOAP message must NOT contain XML Processing Instructions

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 informasiheader . 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.

(5)

Tugas Sistem Informasi Berbasis Web

Berikut struktur utama pesan SOAP:

NuSOAP adalah sebuah kumpulan class-class PHP yang memungkinkan user untuk mengirim dan menerima pesan SOAP melalui protokol HTTP. NuSOAP didistribusikan oleh NuSphere Corporation (http://www.nusphere.com) sebagai open source toolkit di bawah lisensi GNU LGPL.

Salah satu keuntungan dari NuSOAP adalah bahwa NuSOAP bukan merupakan PHP extension, sehingga penggunaannya tidak membutuhkan registrasi khusus ke Sistem Operasi maupun web server. NuSOAP ditulis dalam kode PHP murni sehingga semua developer web dapat mengunakan tool ini tanpa tergantung pada jenis web server yang digunakan.

NuSOAP merupakan toolkit web service berbasis komponen. NuSOAP memiliki sebuah class dasar yang menyediakan method seperti serialisasi variabel dan pemaketan SOAP-Envelope. Interaksi web service dilakukan dengan class client yang disebut dengan class “soapclient” dan class server yang disebut dengan class “soap_server”. Class-class ini mengizinkan user untuk melakukan proses pengiriman dan penerimaan pesan-pesan SOAP dengan bantuan beberapa class-class pendukung lainnya untuk melengkapi proses tersebut.

Operasi-operasi pengiriman pesan SOAP dijalankan dengan melibatkan paramater nama operasi yang diinginkan melalui method call(). Jika web service yang dituju menyediakan sebuah file WSDL, maka class “soapclient” akan mengacu langsung pada URL file WSDL tersebut dan menggunakan class “wsdl” untuk mem-parsing file WSDL dan mengekstrak seluruh datanya. Class “wsdl”

(6)

Tugas Sistem Informasi Berbasis Web

menyediakan method-method untuk mengekstrak data operasi dan per-binding.

Class “soapclient” menggunakan data dari file WSDL untuk menerjemahkan parameter-parameternya sekaligus menyusun SOAP envelope ketika user mengeksekusi suatu pemanggilan service. Ketika pemanggilan ini dieksekusi, class “soapclient” menggunakan “soap_transport_http” untuk mengirim pesan SOAP request dan menerima pesan SOAP response. Selanjutnya pesan SOAP response yang diterima di-parsing dengan menggunakan class “soap_parser” .

Berikut ini adalah diagram proses web service dengan menggunakan NuSOAP:

Gambar Diagram proses web service dengan NuSOAP

 Jika webservice yang dituju menyediakan file WSDL, pemanggilan service dilakukan dengan mengeksekusi method call pada class “soapclient” dengan melibatkan parameter argumen yang disediakan oleh file WSDL.

Instalasi dan konfigurasi NuSOAP dapat dilakukan dengan beberapa tahap berikut:

• Download file dari situs http://dietrich.ganx4.com/nusoap/. • Ekstrak file zip

• Copy file nusoap.php ke lokasi direktori tertentu • Lakukan include class dalam kode PHP:

(7)

Tugas Sistem Informasi Berbasis Web

Dalam membangun sebuah sistem aplikasi berbasis web service, dibutuhkan dua komponen utama yaitu, server sebagai provider entity danclient sebagairequester entity . Sebagai contoh, di bawah ini terdapat dua listing program pada sisi server dan sisiclient . 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 diweb browser dari web service yang dijalankan antar dua file server.php dan client.php tersebut:

(8)

Tugas Sistem Informasi Berbasis Web

Berikut merupakan salah satu contoh dari pesan SOAP (SOAP Message):

<SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body SOAPENV: encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

<taxCalc xmlns="urn:soap-whytewolf-ca:taxcalc" id="o0" SOAP-ENC:root="1"> <rate xmlns="" xsi:type="xsd:string">7</rate>

<sub xmlns="" xsi:type="xsd:string">856</sub> </taxCalc>

</SOAP-ENV:Body> </SOAP-ENV:Envelope>

Pengembangan Web Service Untuk Aplikasi Zodiak 

Web Service yang akan dikembangkan menggunakan NuSOAP API ( Application   Programming Interface). Anda dapat memperoleh API tersebut pada situs

http://deitrich.ganx4.com/nusoap/.

Menggunakan database MySQL 5 (http://www.mysql.com) sebagai media penyimpanan data zodiak. Sedangkan Web Server yang digunakan adalah Apache 2 (http://www.apache.org).

(9)

Tugas Sistem Informasi Berbasis Web

Sebelum menulis kode program untuk aplikasi server, terlebih dahulu Anda siapkan database yang akan digunakan, yaitu data mengenai zodiak.

mysql> CREATE DATABASE zodiak;

mysql> CREATE TABLE ramalan (nama_zodiak VARCHAR(20) PRIMARY KEY, tanggal VARCHAR(30) NOT NULL, ramalan VARCHAR(255) NOT NULL, keuangan

VARCHAR(255)

 NOT NULL, kesehatan VARCHAR(255) NOT NULL, angka_keberuntungan INT NOT  NULL);

2. Menulis kode program untuk aplikasi server 

Setelah Anda membuat database ‘zodiak’, langkah selanjutnya yaitu membuat kode program untuk 

aplikasi server dari Web Service. <?

require_once('nusoap.php'); $ns = "http://localhost:8084/"; $server = new soap_server;

$server->configureWSDL('RamalanZodiak', $ns); $server->wsdl->schemaTargetNamespace = $ns;

$server->register('RamalanZodiak', array('nama_zodiak' => 'xsd:string'), array('return'=>'xsd:string'), $ns);

function RamalanZodiak($nama_zodiak) { if (!$nama_zodiak) {

return new soap_fault('Client', '', 'Harus ada nilainya!', ''); }

if ($conn = mysql_connect("host", "user", "password")) { if ($db = mysql_select_db("zodiak")) {

$result = mysql_query("SELECT * FROM ramalan WHERE nama_zodiak = '$nama_zodiak'");

while ($row = mysql_fetch_array($result)) { $zodiak = $row["nama_zodiak"];

$tanggal = $row["tanggal"]; $ramalan = $row["ramalan"];

(10)

Tugas Sistem Informasi Berbasis Web

$keuangan = $row["keuangan"]; $kesehatan = $row["kesehatan"]; $angka_keberuntungan = $row["angka_keberuntungan"]; } } else {

return new soap_fault('Database Server', '', 'Koneksi ke database gagal!', '');

}

} else {

return new soap_fault('Database Server', '', 'Koneksi ke database gagal!', '');

}

return "<b>Zodiak: </b>$zodiak<br> <b>Tanggal: </b>$tanggal<br>

<b>Ramalan: </b>$ramalan<br> <b>Keuangan: </b>$keuangan<br> <b>Kesehatan: </b>$kesehatan<br>

<b>Angka Keberuntungan: </b>$angka_keberuntungan"; }

$server->service($HTTP_RAW_POST_DATA); exit();

?>

Untuk memastikan apakah aplikasi server yang telah dibangun dapat berjalan dengan baik  atau tidak, ada baiknya kalau Anda melakukan pengetesan terlebih dahulu sebelum Anda menulis kode program untuk aplikasiclient dari Web Service.

(11)

Tugas Sistem Informasi Berbasis Web

Gambar 1. AplikasiServer dari Web Service Zodiak 

Jika pengetesan yang Anda lakukan berhasil, maka padabrowser Anda akan tampil seperti gambar di atas. Anda dapat melihat deskripsi dari Web Service yang Anda bangun dengan memilih menu WSDL pada bagian kiri atas. Tampilan dari deskripsi Web Service Zodiak  adalah sebagai berikut:

(12)

Tugas Sistem Informasi Berbasis Web

Gambar 2.WSDL dari Web Service Zodiak 

3. Menulis kode program untuk aplikasi client 

Langkah berikutnya adalah menulis kode program untuk aplikasiclient . Aplikasi client akan melakukan permintaan layanan pada server Web Service, dan akan menerima nilai yang dikembalikan oleh server Web Service.

<?

require_once('nusoap.php');

$param = array('nama_zodiak' => $nama_zodiak); $client = new

soapclient('http://localhost:8084/secangkirkopipanas/zodiak_webservice/serv er.php');

$response = $client->call('RamalanZodiak', $param); if ($client->fault) {

echo "FAULT:<br>";

echo "Code: { $client->faultcode }<br>"; echo "String: { $client->faultstring }";

(13)

Tugas Sistem Informasi Berbasis Web

} else { echo $response; } $client=new soapclient($wsdl, 'wsdl'); $wsdl="http://localhost:8084/secangkirkopipanas/zodiak_webservice/server.ph  p?wsdl";

echo $response = $client->call('RamalanZodiak', $param); ?>

Untuk memastikan apakah aplikasiclient yang telah dibangun dapat berjalan dengan baik  atau tidak,lakukan pengetesan pada aplikasiclient . URL dari aplikasiclient ditambahkan  parameter ‘nama_zodiak’.

http://localhost:8084/secangkirkopipanas/zodiak_webservice/client.php?nama_zodiak=libra Jika berhasil, maka Anda akan mendapat tampilanbrowser seperti gambar berikut:

Gambar 3. AplikasiClient dari Web Service Zodiak 

Aplikasi zodiak menggunakan PHP Web Service yang baru saja Anda bangun, dapat dikembangkan

sesuai dengan kebutuhan Anda. Selain itu, Anda juga dapat mengkolaborasikan Web Service zodiak ini dengan aplikasi padamobile phone menggunakan J2ME atau dengan aplikasi pada PDA menggunakan Microsoft .NET.

(14)

Tugas Sistem Informasi Berbasis Web

DAFTAR PUSTAKA

Haryanto, Robertus Lilik. 2006. Aplikasi Zodiak Menggunakan PHP Web Service. Kuliah Umum IlmuKomputer.Com

Gambar

Gambar  Diagram proses web service dengan NuSOAP
Gambar 1. Aplikasi Server  dari Web Service Zodiak 
Gambar 2. WSDL dari Web Service Zodiak 
Gambar 3. Aplikasi Client  dari Web Service Zodiak 

Referensi

Dokumen terkait

Hasil Uji Pearson Corelation Budaya Organisasi dan Produktivitas Kerja Perawat Pelaksana di RSUP Haji Adam Malik ... Hasil Uji Pearson Corellation Budaya Organisasi dan

Menyatakan dengan sebenarnya bahwa skripsi saya dengan judul : “AKIBAT HUKUM PERTIMBANGAN HAKIM DALAM MENETAPKAN PERCERAIAN TERHADAP HAK ASUH ANAK YANG MASIH MINDERJARIG (

Kemampuan penyerapan zat warna pada masing-masing kayu kemungkinan disebabkan oleh gugus OH - dari selulosa yang terdapat pada serat kayu mampu membentuk ikatan kimia

Beban silo yang bekerja relatif dekat dengan tepi lereng telah menyebabkan arah pergerakan tanah pada Gambar 4, bergerak dari dasar pondasi langsung menuju ke lereng bagian

The details of states with disability funds and how the tax is handled and claims are worked in regards to your third party provider.. Areas covered in

Tahap plan dimulai dengan menyusun rancangan pembelajaran yang akan dilaksanakan berdasarkan pada data awal kondisi mahasiswa yang disampaikan oleh dosen pengampu mata

Berdasarkan pembahasan hasil penelitian dan uraian dari beberapa pernyataan dapat disimpulkan bahwa, kemampuan pemahaman konsep matematis siswa pada kelas eksperimen

Hasil penelitian menunjukkan adanya peningkatan keterampilan siswa dalam menulis pengumuman menggunakan model think talk write berbantuan media pop up dua dimensi,