PEMROGRAMAN CLIENT SERVER PERTEMUAN VI PENGANTAR

advertisement
PEMROGRAMAN CLIENT SERVER
PERTEMUAN VI
PENGANTAR ASP.NET WEB SERVICE
Dosen Pengampu : Fandy Setyo Utomo, S.Kom
Agenda Perkuliahan :
1.
Konsep Web Service
2.
Studi Kasus Web Service
Software Developer :
Visual Studio .NET 2008/2010
Bahasa Pemrograman :
Visual C#.NET 2008/2010
1
KONSEP WEB SERVICE
Menurut Chappell dan Jewell (2002), menyatakan bahwa web service
merupakan bagian dari logika bisnis, terletak di suatu lokasi internet, yang dapat diakses
melalui standar protokol internet, seperti HTTP (Hypertext Transfer Protocol) dan
SMTP (Simple Mail Transfer Protocol). Sedangkan, menurut Potts dan Kopack (2003),
menyatakan bahwa web service merupakan aplikasi perangkat lunak yang dapat diakses
jarak jauh menggunakan XML. Dengan menggunakan format dokumen XML dan
protokol HTTP untuk media komunikasi datanya, maka web service mampu
mengurangi
hambatan
yang
dikarenakan
kesulitan
kerjasama
antar
operasi
(Interoperability) dan antar platform yang berbeda (Arianto dkk., 2011).
Gambar 1. Konsep Web Service (Lucky, 2008)
Dari gambar 1, dapat diperhatikan bahwa sebenarnya web service merupakan kumpulan
fungsi atau method yang terdapat pada sebuah server yang dapat dipanggil oleh client
dari jarak jauh (Lucky, 2008). Client dapat berupa user yang menggunakan aplikasi
berbasis desktop, web, dan perangkat komunikasi bergerak.
Web Service memiliki beberapa komponen pendukung, yaitu XML
(Extensible Markup Language), SOAP (Simple Object Access Protocol), WSDL (Web
Service Description Language), dan UDDI (Universal Description, Discovery, and
2
Integration). Berikut ini adalah penjelasan ringkas tentang komponen-komponen
tersebut;
1.
XML
XML (Extensible Markup Language) merupakan standar untuk markup
dokumen yang disahkan oleh W3C (World Wide Web Consortium). XML
mendefinisikan sintaks yang umum digunakan untuk markup data secara sederhana.
XML menyediakan format standar untuk dokumen komputer. Format ini cukup
fleksibel untuk disesuaikan dengan domain yang beragam seperti website,
pertukaran data elektronik, grafik vektor, hierarki, serialisasi objek, Remote
Procedure Call (RPC), dan sistem voice mail (Harold dan Means, 2002). XML
merupakan bagian penting bagi pengembang yang ingin membangun web service.
XML berbasis teks, sehingga bersifat platform independent. Sifat ini membuat
pertukaran data antar platform menjadi mungkin.
2.
SOAP
SOAP (Simple Object Access Protocol) adalah sebuah protokol berbasis
XML dengan komunikasi bergaya RPC (Remote Procedure Call) yang
menyediakan cara standar untuk memaketkan pesan (Chappell dan Jewell, 2002).
SOAP terdiri dari 4 bagian utama, yaitu (Short, 2003) :
A. SOAP Envelope
Merupakan bagian yang mendeskripsikan apa yang terkandung di dalam pesan.
B. SOAP Encoding
Bagian ini mendefinisikan cara untuk menyerialkan data ke dalam pesan SOAP.
SOAP Encoding menjelaskan bagaimana data seharusnya dikodekan.
C. SOAP RPC Representation
Bagian ini mendefinisikan protokol yang dapat digunakan untuk memfasilitasi
komunikasi berorientasi prosedur melalui pola permintaan dan jawaban pesan.
D. Pengikatan Protokol HTTP POST
Bagian ini mendefinisikan metode standar dalam pengikatan pesan SOAP ke
protokol HTTP.
Karena berbasis XML, SOAP dapat digunakan untuk pertukaran data antar sistem
walaupun berbeda platform. SOAP tidak terikat pada protokol transport tertentu,
3
sehingga pesan SOAP dapat dikirim lewat sembarang protokol transport yang
mampu mengangkut XML, seperti HTTP dan SMTP.
3.
WSDL
WSDL merupakan sebuah dokumen dalam format XML yang isinya
menjelaskan informasi web service. Di dalam dokumen ini dijelaskan method apa
saja yang tersedia di dalam web service, parameter apa yang diperlukan untuk
mengakses sebuah method, dan apa hasil atau tipe data yang dikembalikan oleh
method yang diakses tersebut (Lucky, 2008).
4.
UDDI
UDDI (Universal Description Discovery and Integration) adalah sebuah
metode standar untuk penerbitan dan menemukan informasi tentang layanan web
(web service). UDDI merupakan sebuah usaha industri yang mencoba untuk
menciptakan
sebuah
platform
independent,
framework
terbuka
untuk
mendeskripsikan layanan, menemukan bisnis, dan mengintegrasikan layanan bisnis
(Chappell dan Jewell, 2002). Infrastruktur yang mendukung UDDI terdiri dari
serangkaian registry dan registrar. Registry berisi salinan lengkap direktori UDDI,
sedangkan registrar menyediakan layanan registrasi UDDI untuk kepentingan
pelanggan (Short, 2003).
4
STUDI KASUS
Studi kasus membahas tentang pembuatan web service untuk operasi
matematika, yaitu penjumlahan, pengurangan, pembagian, dan perkalian. Kemudian,
dilanjutkan dengan membuat aplikasi desktop client yang mampu mengkonsumsi web
service.
1.
Pembuatan Web Service
Dalam tutorial ini pembuatan web service menggunakan IDE Visual
Studio 2010. Bagi yang menggunakan IDE Visual Studio 2008, konsepnya sama
saja.
A. Langkah1
Buat project baru dengan tipe Web Site.
B. Langkah 2
Pilih Visual C#, kemudian tentukan Framework yang digunakan, yaitu .NET
Framework 3.5, lalu pilih ASP.NET Web Service. Simpan project pada folder
masing-masing.
5
C. Langkah 3
Edit Source Sode sehingga seperti berikut ini,
2.
Pengujian Web Service
A. Langkah 1
Running aplikasi, sehingga otomatis membuka browser dan menampilkan hasil
sebagai berikut,
6
Dapat diperhatikan pada gambar tersebut, web service beralamat di
http://localhost:52372/webService/Service.asmx. Terdapat 4 layanan yang
dapat diakses oleh aplikasi client, yaitu layanan operasi pembagian,
penjumlahan, perkalian, dan pengurangan.
B. Langkah 2
Untuk menguji layanan web, dapat diakses satu per satu layanan yang ada,
kemudian coba diinputkan 2 nilai, yaitu nilai a dan b. Sebagai contoh, akses
layanan “jumlah”,
Jika diinputkan nilai a = 5 dan nilai b = 7, kemudian ditekan tombol Invoke,
maka hasilnya adalah sebagai berikut,
7
Coba anda pelajari dokumen WSDL (tag definitions, types, message, portType,
binding, service), SOAP Request dan SOAP Response yang dihasilkan dari
aplikasi web service ini!
3.
Pembuatan Aplikasi Client
Buat project baru pada Visual Studio dengan tipe Windows Form
Application. Beri nama project dengan operator. Simpan pada folder masingmasing.
8
Kemudian, buat desain form seperti berikut ini,
Keterangan :
Kontrol
Form1
Properti
StartPosition : CenterScreen
Text : Pengaksesan Web Service
Label1
Text : Nilai A
Label2
Text : Nilai B
Label3
Text : Hasil
TextBox1
Name : txt_a
TextBox2
Name : txt_b
TextBox3
Name : txtHasil
Button1
Button2
Button3
Button4
Name : cmdTambah
Text : +
Name : cmdKurang
Text : Name : cmdBagi
Text : /
Name : cmdKali
Text : X
Kemudian, klik kanan pada project operator di Solution Explorer. Pilih Add
Service Reference,
9
Beri nama namespace dengan operatorService. Kemudian, pilih tombol
Advanced,
10
Kemudian, pilih tombol Add Web Reference,
Pada bagian URL, ketikkan alamat URL web service yang telah dibuat sebelumnya,
yaitu http://localhost:52372/webService/Service.asmx
Kemudian, pada bagian Web Reference Name, isi dengan layananOperator. Lalu
pilih tombol Add Reference. Ketikkan kode program berikut pada aplikasi
Windows Form,
11
Lengkapi kode program tersebut dengan kode program untuk tombol dengan
operasi pengurangan, pembagian, dan perkalian! Kemudian, Running aplikasi,
amati proses yang dapat dilakukan oleh aplikasi desktop client dan web service.
12
TUGAS PRAKTIKUM
1.
Apa yang anda ketahui tentang Internet Information Service (IIS)? Kemudian,
jelaskan hubungan antara IIS dengan ASP.NET Web Service!
2.
Bagaimana cara mengaktifkan IIS pada Microsoft Windows XP dan Windows 7?
3.
Bagaimana cara meregister Web Service yang telah anda buat pada IIS Manager?
4.
Buat aplikasi client berbasis Web menggunakan PHP. Pada aplikasi web yang anda
buat memiliki fitur yang sama dengan aplikasi client desktop yang telah anda buat
pada praktikum ini. Kemudian, jelaskan bagaimana implementasi aplikasi Web
yang anda buat mampu mengkonsumsi web service operasi matematika
(penjumlahan, pengurangan, pembagian, perkalian).
Ketentuan :
 1 kelas hanya perlu mengirimkan 1 tugas praktikum.
 Tugas dikirim ke email [email protected] dalam
format PDF. Pengiriman tugas paling lambat 6 hari setelah praktikum, pukul
16.00 WIB.
13
DAFTAR PUSTAKA
Arianto, H.T., Satoto, Kodrat, I. dan Agung, B., 2011, Pemprograman Aplikasi
Platform Terbuka Berbasis Xml Web Services (Studi Kasus: Kolaborasi
Aplikasi Dan Pertukaran Data Kependudukan Dengan Catatan Medis),
Alamat Website http://eprints.undip.ac.id/25903/1/ML2F399401.pdf, diakses
tanggal 27 November 2012.
Chappell, D.A. dan Jewell, T., 2002, Java Web Services, Edisi 1, O'Reilly, SebastopolCanada
Lucky, 2008, XML Web Services Aplikasi Desktop, Internet, dan Handphone,
JASAKOM, Jakarta.
Potts, S. dan Kopack, M., 2003, Teach Yourself Web Services in 24 Hours, SAMS,
Indianapolis-USA
Short, S., 2003, Building XML Web Services For The Microsoft .NET Platform,
Mustaqim, I. dan Said, B., Elex Media Komputindo, Jakarta
14
Download