Bagi kalian yang sering berselancar di internet gambar seperti di atas pasti sering kalian jumpai. Gambar hasil pencarian dari Google di atas dapat digolongkan dalam halaman-halaman web dinamis. Hal ini karena apa yang akan ditampilkan berubah-ubah tergantung pada apa yang kita inputkan. Bab ini membahas tiga standar kompetensi yaitu membuat halaman web dinamis dasar, membuat halaman dinamis tingkat lanjut dan membuat program aplikasi web berbasis JSP. Penggabungan tiga kompetensi ini karena kedekatannya dengan kompetensi dasar. Penyusunan sub bab tidak mengacu pada kompetensi dasar, namun lebih mengacu pada urutan dan kedekatan pokok bahasan. Rangkuman diletakkan pada akhir bab dilanjutkan dengan soal-soal latihan yang disusun dari soal-soal yang mudah hingga soal-soal yang sulit. Latihan soal ini digunakan untuk mengukur kemampuan terhadap kompetensi dasar ini. Sebelum mempelajari kompetensi ini mengumpulkanlah kembali dasar sistem komputer, sistem operasi, algoritma pemrograman dasar, pemrogaman Java, web statis dan HTML.
14.1 DINAMIS WEB DASAR
Pengertian web dinamis telah disinggung secara ringkas pada Bab 13. Pada bab ini kita akan lebih dalam mempelajari web dinamis.
Kebutuhan Lingkungan Teknis
Ada perbedaan yang penting dalam kebutuhan lingkungan pengembangan antara web statis dan web dinamis. Pada bab sebelumnya Anda telah mengetahui bahwa ada beberapa kebutuhan perangkat untuk membuat halaman web statis, antara lain perangkat komputer personal, sistem operasi, editor teks atau perangkat lunak pembuat halaman web, dan browser web. Beberapa kebutuhan tersebut dapat digunakan untuk lingkungan web statis, namun beberapa perangkat tambahan juga diperlukan. Perangkat keras Pengembangan web dinamis membutuhkan perangkat keras yang spesifikasinya lebih tinggi dibandingkan statistik web. Umumnya pengembang akan melakukan pembuatan web dinamis pada satu komputer yang berperan sekaligus sebagai server dan klien. Tapi, seringkali juga dibutuhkan lebih dari satu komputer dimana satu komputer berperan sebagai server dan yang lainnya sebagai client. Pada komputer yang berperan sebagai server maka spesifikasi teknisnya harus lebih tinggi dari klien komputer. Kebutuhan prosesor yang lebih cepat dan memori utama yang lebih besar merupakan kebutuhan mutlak. Perangkat lunak Sistem operasi yang digunakan pada pengembangan web dinamis lebih baik jika menggunakan versi yang mendukung. Biasanya pembuat sistem operasi akan menyediakan versi yang memang khusus diperuntukkan bagi server. Versi ini biasanya memiliki tingkat keamanan dan yang lebih tinggi dari versi desktop-nya. Sebagai contoh, pada Linux ada distro versi Ubuntu server, SuSe menyediakan versi Enterprise Server, dan demikian juga distro-distro lainnya. Sedangkan pada Windows tersedia Windows NT, Windows Server 2000, Windows Server 2003 dan yang terbaru Windows Server 2008. Kebutuhan perangkat lunak yang sangat dinamis membedakan antara web statis dan web adalah bahasa pemrograman sisi server. Bahasa pemrograman ini diinstall untuk digunakan server web menerjemahkan perintah-perintah tertentu
dalam bahasa tertentu. Sebagai contoh jika kita hanya menginstall web server Apache saja, maka kita tidak dapat menjalankan halaman dinamis web yang kita tulis dengan bahasa pemrograman PHP atau JSP. Agar dapat menjalankan halaman web dinamis tersebut kita perlu menginstall PHP atau Tomcat. Perangkat pengembang web dinamis saat ini sudah banyak tersedia, meskipun beberapa memiliki harga yang relatif mahal. Beberapa di antaranya adalah Microsoft Visual Studio, Borland Delphi Studio, Adobe Dreamweaver, dan lainnya [1]lain. Perangkat lunak ini selain dapat sebagai HTML Editor juga mendukung bahasa pemrograman server seperti ASP.Net, PHP, JSP, dan ColdFusion. Perangkat lunak pengembang yang gratis juga tersedia, antara lain NetBeans yang mendukung penuh JSP, Eclipse yang mendukung banyak bahasa pemrograman, Komodo Editor, dan lain-lain. Meskipun gratis, tetapi fasilitas yang disediakan tidak kalah dengan yang tidak gratis. Perangkat lunak lain yang dibutuhkan adalah DBMS. Hal ini karena biasanya web dinamis menggunakan data dasar sebagai tempat penyimpanan data. DBMS personal seperti Microsoft Access bukan pilihan yang baik untuk web dinamis, karena faktor keamanan dan kinerjanya yang tidak sesuai dengan sifat-sifat web dinamis. Basis data berbasis SQL yang bersifat server seperti MySQL, Oracle, Microsoft SQL Server, dan lain-lain merupakan pilihan yang cocok untuk digunakan dalam dinamis web. Pemrograman Web Dinamis Pemrograman web merupakan usaha untuk membuat halaman web dengan menggunakan bahasa pemrograman web (script). Pemrograman web dikenal juga dengan istilah pengembangan web (web development). Istilah lain yang mungkin juga cukup terkenal adalah desain web. Desain web lebih difokuskan pada merancang tampilan halaman[1] halaman web menjadi menarik bila dilihat. Atau boleh dikatakan desain web lebih pada aspek visualnya sedangkan pemrograman web lebih fokus pada aspek logika proses yang terjadi di halaman-halaman web. Seorang programmer web mungkin juga seorang desainer web, namun biasanya pekerjaan ini dipisahkan orangnya karena perbedaan fokusnya. Untuk membuat interaksi yang baik, dibutuhkan beberapa model pemrograman web. Model pemrograman yang umum digunakan adalah client-side dan server [1]samping. Client dan server dalam kasus ini menunjukkan dua tempat yang berbeda. Server adalah komputer yang bertindak sebagai pihak yang melayani permintaan data atau informasi. Sedangkan Klien adalah komputer pengguna yang hendak mengakses program ke server untuk meminta data atau informasi dengan menggunakan alamat yang unik. Secara umum interaksi dan pertukaran data antara client dan server dalam internet tampak pada gambar 14.2. Pada gambar tersebut, tampak bahwa segala proses dilakukan di web-server (server [1] side) sedangkan client hanya akan menerima hasil olahan dari web [1] server yaitu berupa halaman-halaman dalam format HTML.
Biasanya perangkat komputer yang bertindak sebagai server akan berjalan terus [1] terus menerus tanpa henti dan berperan sebagai tempat file/program dari aplikasi web ditempatkan. Secara umum, untuk dapat mengakses layanan ke server yang dibutuhkan browser seperti Internet Explorer (IE), Opera, Mozilla dan Netscape.
Bahasa Skrip untuk Pemrograman Web
Seperti dijelaskan di atas ada dua model pemrograman web yaitu client-side dan server-side. Bahasa pemrograman untuk membuat web dinamis juga terbagi menjadi dua yaitu client-side script dan server-side script. Bahasa pemrograman yang digunakan dalam membuat aplikasi pada sisi client biasa disebut sebagai client-side script. Client-side script yang umum digunakan adalah JavaScript dan VBScript. Keuntungan utama dari skrip sisi klien adalah waktu prosesnya yang jauh lebih cepat dibandingkan sisi server. Hal ini karena semua permintaan pengguna akan dilayani pada komputer pengguna itu sendiri. Namun masalah terbesar dari aplikasi dengan client-side script adalah keamanan
kode dan data. Hal karena pengguna dapat dengan mudah membuka dan melihat program kode. Contoh penggunaan skrip sisi klien adalah : aplikasi web untuk kalkulator, tanggal atau permainan. pemeriksaan event pada browser, jika mouse diklik kanan maka akan muncul keterangan yang dibutuhkan. validasi isi form yang diinputkan oleh pengguna, sebelum isi form tersebut dikirim ke server. Bahasa pemrograman yang digunakan dalam membuat aplikasi pada sisi server biasa disebut sebagai server-side script. Ada beberapa keuntungan pada penggunaan skrip sisi server, yaitu : Keamanan kode yang kita buat tidak akan dapat dibaca oleh pengguna karena semuanya akan disimpan dan dijalankan di server web. Yang akan dikirim ke klien (pengguna) adalah hasil pengolahan yang berupa dokumen dalam format HTML saja. koneksi dengan basis data Kemampuan koneksi dengan basis data merupakan keuntungan terbesar dari skrip sisi server. Dengan kemampuan informasi yang dihasilkan oleh server web menjadi sangat dinamis bukan lagi halaman-halaman statis. Informasi yang disampaikan kepada pengguna tergantung dari apa yang diinginkan oleh pengguna tersebut. Dapat melakukan pelacakan (pelacakan) pengguna Dengan skrip sisi server, dapat dikenali pengguna yang sedang mengakses aplikasi web dengan menggunakan fasilitas sesi. Saat ini ada tiga teknologi utama yang digunakan dalam server side script, yaitu ASP (termasuk ASP.Net), PHP, dan JSP. Informasi yang disampaikan kepada pengguna tergantung dari apa yang diinginkan oleh pengguna tersebut. Dapat melakukan pelacakan (pelacakan) pengguna Dengan skrip sisi server, dapat dikenali pengguna yang sedang mengakses aplikasi web dengan menggunakan fasilitas sesi. Saat ini ada tiga teknologi utama yang digunakan dalam server side script, yaitu ASP (termasuk ASP.Net), PHP, dan JSP. Informasi yang disampaikan kepada pengguna tergantung dari apa yang diinginkan oleh pengguna tersebut. Dapat melakukan pelacakan (pelacakan) pengguna Dengan skrip sisi server, dapat dikenali pengguna yang sedang mengakses aplikasi web dengan menggunakan fasilitas sesi. Saat ini ada tiga teknologi utama yang digunakan dalam server side script, yaitu ASP (termasuk ASP.Net), PHP, dan JSP.
ASP
ASP sebenarnya bukan bahasa pemrograman karena ASP adalah mesin (engine) untuk skrip sisi server yang ditanamkan pada IIS. Bahasa pemrograman yang dipakai adalah VBScript. Namun orang lebih sering menyebut ASP saja. Secara default ini adalah server side script pada web server Microsoft Windows. Seperti halnya bahasa pemrograman web lainnya, untuk mengetahui bahwa suatu kode dalam halaman web merupakan VBScript maka digunakan tag penanda. Berikut ini suatu contoh VBScript:
Pada kode di atas bagian yang ditandai dengan <% dan %>merupakan bagian yang memuat kode VBScript. VBScript merupakan bahasa yang sangat mirip dengan Visual Basic. Namun telah disesuaikan dengan lingkungan web. Dokumen berisi kode ini dapat disimpan dalam bentuk html atau dengan ekstensi .asp. Namun yang paling penting adalah dokumen tersebut harus diletakkan pada direktori yang dapat dibaca dan dieksekusi oleh web server IIS. ASP.Net merupakan versi lanjutan dari ASP, namun dengan teknologi yang sangat berbeda. ASP.Net dibangun berdasarkan teknologi .Net yang dikembangkan oleh Microsoft. Bahasa yang digunakan tidak lagi VBScript namun telah menggunakan kemampuan penuh dari satu bahasa dalam kelompok .Net yaitu Visual Basic.NET, C#, Visual J. Dengan teknologi .
PHP
PHP adalah bahasa pemrograman yang dirancang khusus untuk membuat halaman web. PHP adalah singkatan dari PHP Hypertext Preprocessor. Singkatan yang agak aneh. Awalnya, PHP adalah singkatan dari Personal Home Page yang pertama kali dibuat oleh Rasmus Lerdorf. PHP dibuat pertama kali untuk keperluan mencatat jumlah pengunjung homepagenya. Perkembangan php saat ini dapat dilihat pada www.php.net. PHP adalah salah satu bahasa server-side yang paling populer. Kepopulerannya disebabkan kelebihan-kelebihannya dibanding bahasa sejenis, seperti Perl dan CGI. PHP mampu menutupi kekurangan pada bahasa pemrograman web pada umumnya. PHP mudah dibuat dan cepat dijalankan. PHP dapat berjalan dalam server web yang berbeda, seperti Apache, PWS, IIS dan sebagainya. PHP juga dapat berjalan dalam sistem operasi yang berbeda pula, seperti UNIX, Windows, Mac OS X dan Linux. PHP diterbitkan secara gratis. Kode sumber PHP dapat dilihat[1]download
tanpa perlu megeluarkan uang. PHP juga termasuk bahasa yang embedded (bisa
diletakkan di dalam tag HTML)
Persiapan Membuat Halaman Web Dinamis
Persiapan yang perlu dilakukan sebelum membuat halaman
web dinamis antara lain adalah: Memeriksa apakah web server sudah terinstal
dengan benar dan berjalan sebagaimana mestinya. Pada system operasi windows,
kita dapat memeriksa apakah web server berjalan atau tidak melalui jendela
Service. Buka Control Panel, kemudian klik ganda pada ikon Administrative
Tools. Pilih ikon Service dan klik ganda pada ikon tersebut sampai terbuka
jendela seperti pada Gambar 14.3.
Pada jendela Services tersebut cari nama servis web server kalian. Jika kalian menggunakan IIS cari nama Internet Information Services pada kolom nama. Jika kalian memakai Apache, cari juga nama Apache. Jika belum ada mungkin belum terinstal atau belum terinstal sebagai servis. Jika sudah ada maka periksalah apakah sudah dijalankan apa belum dengan cara memeriksa status apakah sudah dimulai atau belum. Jika belum, klik start untuk menjalankan servis tersebut. Setelah itu ujilah dengan menjalankan browser web Anda. Ketikkan pada bagian alamat : http://localhost/ kemudian tekan enter. Pada beberapa konfigurasi server web, pemanggilan alamat mungkin harus menyertakan nomor port seperti http://localhost:8080/. Jika kalian mendapati halaman muka server web yang kalian tampilkan (lihat Gambar 14.4) berarti server web telah dapat berjalan.
Memeriksa apakah server bahasa pemrograman yang akan digunakan sudah terinstall dan dapat dipanggil oleh server web. Pemeriksaan dapat dilakukan dengan cara memeriksa daftar perangkat lunak yang sudah diinstal di sistem. Pada Windows dapat dilakukan dengan cara membuka jendela Add and Remove Programs seperti pada Gambar 14.5. Jika perangkat lunak bahasa pemrograman kalian sudah terinstal maka akan tercatat pada jendela ini.
yaitu lokasi penyimpanan file-file kode program. File-file yang berisi kode-kode server-side script harus diletakkan di direktori yang bisa dibaca oleh server web. Sebagai contoh pada beberapa distribusi file-file Linux PHP disimpan pada direktori /usr/var/www/ dibeberapa distribusi lain yang disimpan di direktori /svr/www/. Pada Microsoft Windows
demikian juga. Lokasi ini dapat diubah dengan cara mengedit file konfigurasi Apache Web Server (httpd.conf). Contoh lokasi penyimpanan file-file PHP dapat dilihat pada Gambar 14.6.
Pembuatan dan Pengujian Halaman Web Dinamis Pada bagian ini kita akan mencoba membuat halaman dinamis sederhana dengan bahasa PHP pada server web Apache. Buka editor teks kalian (bisa menggunakan Notepad) lalu ketikkan kode berikut ini. Simpan file dengan nama 21_1.php dan simpan di direktori yang bisa server web Apache (pada kasus ini disimpan di direktori c:\appserv\www\scripts\). Bukalah web browser yang kalian ketikkan di halaman alamat: http://localhost:8080/scripts/21_2.php. Localhost adalah nama server-nya dan 8080 adalah port dimana Apache dijalankan. Perhatikan bagaimana menganggap alamat ini dan bandingkan dengan lokasi asli dari file tersebut. Jika semuanya lancar maka Anda akan melihat tampilan seperti pada Gambar 14.7.
Halaman web dinamis harus dipanggil dengan cara tersebut. Karena memang hanya bisa dijalankan oleh web server. Kalau dengan file halaman web statis, kalian bisa langsung klik ganda pada file tersebut dan browser web akan menampilkan hasilnya. Tetapi dengan halaman web dinamis tidak bisa dengan cara tersebut. love klik ganda pada halama web dinamis yang telah kalian buat di atas. kapasitas outputnya?
SEKILAS TENTANG JSP
SEKILAS TENTANG JSP Seperti telah dijelaskan di atas,
Java Server Pages (JSP) adalah bahasa scripting untuk web programming yang
bersifat server side seperti halnya PHP dan ASP. JSP dapat berupa gabungan
antara baris HTML dan fungsi-fungsi dari JSP itu sendiri. JSP adalah suatu
teknologi web berbasis bahasa pemrograman Java dan berjalan di Platform Java,
serta merupakan bagian teknologi J2EE (Java 2 Enterprise Edition). Teknologi
JSP menyediakan cara yang lebih mudah dan cepat untuk membuat halaman-halaman web
yang menampilkan isi secara dinamik. Teknologi JSP didesain untuk mempermudah
dan mempercepat pembuatan aplikasi berbasis web yang bekerja dengan berbagai
macam web server, application server, browser dan development
tool
Ada tiga cara untuk menggunakan teknologi Java dalam lingkungan web, yaitu applet, servlet dan JSP. Applet merupakan program Java yang disisipkan pada halaman HTML dengan menggunakan <applet> Kita dapat membuat sebuah program yang kompleks dengan menggunakan bahasa Java kemudian jika ingin ditampilkan dalam halaman web, kita menyimpan program tersebut dalam bentuk applet dan menyisipkannya pada halaman-halaman HTML. Applet ini akan dieksekusi oleh Java Virtual Machine (JVM) pada browser. Sayangnya sering komputer klien tidak didukung oleh JVM, sehingga applet tersebut tidak dapat dijalankan. Servlet adalah program yang ditulis dengan bahasa Java yang dijalankan pada server yang terkoneksi web. Pada servlet, komputer client tidak membutuhkan JVM, karena semua kode program akan dieksekusi di sisi server. Output yang akan disampaikan kepada browser client adalah HTML murni. Servlet ini akan dikompilasi dalam bentuk class. Server secara umum mampu meningkatkan sisi interaktif dan dinamis halaman web. Kelemahan dari servlet adalah teks-teks HTML yang berisi tampilan halaman harus dibuat dengan menggunakan bahasa pemrograman Java. Hal ini memudahkan jika kita ingin mengubah tampilan bagian HTML-nya, karena berarti kita harus membuka kembali kode program java di servlet. JSP merupakan solusi dari servlet. Kita tidak perlu mengkodekan teks-teks HTML pada program, tapi cukup menyisipkan kode JSP pada teks HTML. Artinya bagian statis yang berupa tag-tag HTML akan terpisah dari kode JSP. Kita dapat membuat halaman web statis dengan HTML / Web editor, kemudian kita sisipi dengan kode JSP untuk membuat halaman menjadi web dinamis.
Mekanisme Kerja Aplikasi Web Berbasis JSP
Secara umum aplikasi web berbasis JSP akan mengikuti mekanisme seperti Gambar 14.8. Halaman-halaman web yang mengandung kode JSP akan dikirim ke server web. Kemudian server web akan memanggil perangkat lunak penerjemah JSP. Oleh penerjemah ini kode JSP akan diubah menjadi file sumber berekstensi .Java. file ini akan dikompilasi untuk menghasilkan class. Hasil dari kompilasi ini akan dijalankan kemudian hasilnya akan disampaikan kepada server web untuk menerapkan pada klien browser
Sekilas proses di atas terlihat bertele-tele. Pada awalnya, memang untuk menampilkan halaman yang mengandung JSP terasa lambat karena proses kompilasi harus dilakukan. Tetapi ketika memanggil untuk yang kedua kali maka
proses penampilan halaman akan sangat cepat. Hal ini karena proses kompilasi tidak perlu dilakukan lagi.
Kebutuhan Perangkat Lunak dan Konfigurasi
Untuk membangun aplikasi berbasis web JSP, perangkat lunak yang dibutuhkan hampir sama dengan web dinamis lainnya. Namun ada kekhususan dibanding dengan ASP atau PHP. Hal ini karena perbedaan mekanisme proses antara JSP dengan ASP atau PHP. Perangkat lunak yang telah disebutkan di bagian awal berikut ini adalah kebutuhan perangkat lunak tambahan untuk JSP. Java Development Kit (JDK). Karena JSP berdasarkan bahasa Java, maka JDK harus terinstal di dalam komputer. JDK telah dibahas secara singkat pada bab 8. Tomcat. Tomcat adalah servlet container dan implementasi JSP. Dibutuhkan untuk mensimulasi komputer personal menjadi web server. Tomcat biasanya diinstal di atas web server Apache, sehingga orang sering menyebut sebagai Apache Tomcat. Perangkat lunak ini dapat didownload gratis di situshttp://jakarta.apache.org . Aplikasi pengembang terpadu (IDE) seperti NetBeans atau Eclipse. Meskipun membuat halaman JSP bisa menggunakan editor teks biasa disarankan untuk menggunakan aplikasi seperti NetBeans untuk mempermudah pembuatan web. Bahkan pada versi 6.1. (dapat didownload di http://www.netbeans.org ) selain mendapatkan IDE kita juga mendapatkan web server dan servlet container (Apache Tomcat) terpadu (Gambar 14.9). Kita juga bisa menggunakan server aplikasi yang sangat kuat yaitu SUN Java Application Server (Gambar 14.10) yang juga terintegrasi pada paket penuh NetBeans. Pada buku ini kita akan banyak menggunakan fasilitas dari NetBeans baik untuk mengkonfigurasi maupun untuk membuat halaman-halaman JSP.
Untuk menguji apakah halaman JSP dapat dijalankan, pada awal halaman NetBeans, klik menu File dan pilih New Project. Jendela Proyek Baru seperti Gambar 14.12. akan terbuka. Pada bagian Pilih Proyek pilih kategori Web dan pada Proyek pilih Aplikasi Web. Klik Next untuk melanjutkan pada menentukan nama dan lokasi proyek penyimpanan (Gambar 14.13). klik Next untuk melanjutkan menentukan tipe dan setting server (Gambar 14.14). Pada bagian ini kita dapat memilih apakah menggunakan Apache Tomcat atau GlassFish (Java Application Server). Klik Finish untuk menyelesaikan konfigurasi aplikasi web.
Setelah kalian menekan Finish kalian akan dihadapkan pada tampilan seperti pada Gambar 14.15.
Perhatikan pada jendela Project klik Files kemudian cermati struktur direktori direktori JSP-01 (Gambar 14.16). Struktur direktori aplikasi JSP harus mengikuti aturan yang ketat. Di bawah direktori JSP-01 terdapat direktori dengan penting yaitu web. direktori ini tempat kita menyimpan file dengan ekstensi .jsp. Di bawah direktori web direktori WEB-INF. Direktori ini harus ditulis namanya seperti ini, jika tidak maka aplikasi tidak akan jalan. Direktori ini berisi file-file konfigurasi yang penting bagi aplikasi web dengan JSP. Coba kalian jalankan halaman JSP yang telah otomatis dibuat oleh NetBeans dengan cara pilih menu Run, kemudian pilih Run Main Project. Kode program yang dibuatkan otomatis oleh NetBeans ini seperti berikut:
Jika browser web Anda telah berhasil menampilkan halaman seperti pada Gambar 14.17, berarti Anda telah siap untuk membuat aplikasi dengan JSP. Perhatikan alamat URL-nya, halaman ini dipanggil dengan alamat http://localhost:8080/JSP-01/. Karena file yang kita panggil adalah file index.jsp, maka kita dibolehkan memanggil halaman tersebut tanpa menyebut nama file. Konfigurasi pada server telah membuat server menemukan bahwa halaman dengan indeks nama adalah halaman awal.
DASAR-DASAR JSP
JSP menyediakan empat kategori tag, yaitu directive, element scripting, komentar, dan action. Pada bagian ini kita tidak akan mempelajari tentang deklarasi variabel, struktur program, kelas dan metode. Hal ini karena JSP didasarkan pada java.
Pengarahan
Direktif adalah tag yang menentukan bagaimana dokumen berisi arahan ini akan diselenggarakan. Directive yang digunakan JSP untuk mengirimkan “pesan” ke container JSP. Directive berguna untuk melakukan setting nilai global seperti deklarasi class atau method. Setting yang dilakukan oleh directive berlaku pada seluruh halaman (hanya halaman itu saja). Secara umum sintaks directive adalah sebagai berikut :
Skrip Elemen
Elemen scripting digunakan untuk menggabungkan instruksi-instruksi pemrograman Java ke dalam halaman web. Instruksi tersebut akan dieksekusi setiap kali halaman halaman sesuai permintaan. Ada tiga jenis scripting yaitu deklarasi, scriplet dan ekspresi. JSP menyediakan tag yang secara khusus ditujukan untuk melakukan pendeklarasian variabel yang berlevel halaman. Variabel seperti ini akan dikenal di sepanjang halaman. Tag yang dimaksud dengan deklarasi tag. Tag ini berbentuk sebagai berikut :
naskah
Skrip merupakan kode kode program Java uang dijalankan setiap kali halaman JSP dipanggil. Pada bagian ini kalian bisa memasukkan kode-kode program Java yang telah kalian pelajari pada Bab 8. Cara penulisannya adalah dengan memberikan tag <% kode %>. Contoh 14.2. Penggunaan tag script.
Simpan file dengan nama yang diakhiri .jsp. Jalankan kode program tersebut dan periksalah hasilnya.
Ekspres
Ekspresi adalah satu baris perintah yang digunakan untuk mengeksekusi perintah sekaligus menampilkan dalam halaman web. Eskpresi ini mirip seperti ketika kita memanggil fungsi/metode pada Java. Cara penulisannya adalah dengan menggunakan tag <%= kode %>Contoh 14.3. Penggunaan tag ekspresi. Ketikkan kode di bawah ini kemudian simpan sebagai file jsp.
Jalankan kode program di atas. Tampilan output akan tampak seperti pada Gambar 14.19.
Komentar
Komentar yang digunakan untuk memberikan keterangan pada kode-kode JSP. Ada tiga jenis komentar yang dapat disisipkan dalam halaman JSP, yaitu komentar konten, komentar JSP dan komentar bahasa script. Konten komentar ditulis dengan tag . Model komentar ini tidak menampilkan output ke browser. Tapi tertulis pada source HTML. Komentar JSP merupakan tipe komentar yang hanya tampak pada kode program JSP. Ketika kode JSP dikompilasi, komentar tersebut akan dilewati dan tidak ikut dikompilasi. Komentar ini ditulis dengan cara
Tindakan
Aksi beberapa aksi yang berbeda-beda. Hampir mirip dengan scripting, tindakan akan dieksekusi setiap kali ada permintaan. Fungsi penting dari tindakan adalah memungkinkan terjadinya transfer kontrol antar halaman, mendukung penggunaan applet Java dan memungkinkan JSP terintegrasi dengan komponen JavaBeans. JSP mengenal tag action standar dan custom tag. Tag standar adalah tag yang didefinisikan dalam spesifikasi JSP, sedangkan custom tag adalah tag baru yang dapat didefinisikan sendiri. Pada bagian ini hanya dibahas mengenai tag action standar. Tag action standar JSP adalah sebagai berikut :
Pada buku ini kita akan mempelajari penggunaan action standard forward dan param. Forward action ini digunakan untuk mentransfer kontrol dari sebuah halaman JSP ke halaman lain pada server lokal. Saat proses berlangsung, baris [1] baris kode sebelum aksi forward JSP asal tidak akan diproses lagi oleh JSP container. Proses berpindah pada halaman tujuan. Cara penulisannya adalah dengan menggunakan tag
Jalankan halaman login.html maka kalian akan mendapatkan tampilan seperti pada Gambar 14.20. Isikan sembarang nama dan password kemudian tekan tombol Login. Kalian tidak akan mendapatkan hasil apa-apa. Nama dan password anda akan hilang. Demikian berulang-ulang. Sekarang masukkan
pada nama 'aunurrm' dan passwordnya 'arm' (tanpa tanda petik). Tekan tombol Login, maka kalian akan mendapatkan hasil seperti pada Gambar 14.21.
Pada contoh di atas file login.html merupakan
file untuk menerima input nama dan password. Pada file ini kita menggunakan
fitur form pada HTML. Formulir dibentuk dengan menggunakan pasangan tag
dan
. Dua
atribut utama dari FORM yang sering digunakan adalah ACTION dan METHOD. ACTION
menentukan alamat yang akan dijalankan dan menerima semua masukan pada FORM.
Jika ACTION tidak disebutkan, informasi akan dikirim ke alamat yang sama dengan
halaman FORM itu sendiri. METHOD digunakan untuk menentukan bagaimana informasi
dikirim ke alamat yang disebutkan dalam ACTION. Nilai yang umum digunakan
adalah GET dan POST. POST membuat informasi akan dikirim secara terpisah dengan
alamat, sedangkan GET akan membuat informasi dikirim menjadi satu dengan alamat
yang dituju. Contoh di atas menggunakan action=”testlogin.jsp” dan metode
penyampaiannya adalah post. Artinya data pada form akan dikirim ke file dengan
nama testlogin.jsp yang berada satu direktori dengan file login.html.
File kedua yang testlogin.jsp adalah file yang
digunakan untuk menangkap input kemudian memeriksa apakah input tersebut valid
atau tidak. Perintah request.getParameter digunakan untuk menerima input sesuai
dengan variabel input yang ditetapkan. Sebagai contoh
request.getParameter(‘nama’) berarti akan menangkap isi dari variabel nama dari
file login.html. Isi dari nama dan pass ini kemudian di masukkan pada variabel
string dengan nama yang sama. Kemudian dicocokkan apakah nama = ‘aunurrm’ dan
pass=’arm’. Jika benar maka action forward dilakukan yaitu membawa isi yang
didefinisikan di action param yaitu variabel ‘id’ ke file loginvalid.jsp. Jika
tidak maka action forward juga dilakukan tetapi kembali ke file login.html.
File ketiga hanya dipanggil jika syarat nama dan pass dipenuhi. File ini juga
menggunakan request.getParameter untuk menangkap variabel ‘id’.
Keamanan dalam Web Dinamis
Web termasuk internet yang paling rentan terhadap ancaman dan layanan pelanggaran. Ada beberapa cara yang bisa dilakukan oleh pihak yang tidak bertanggung jawab terhadap suatu situs, antara lain: Pemanfaatan sistem bug. Para penyerang menggunakan bug (kesalahan) yang dikandung oleh sistem operasi, server web, bahasa pemrograman web, atau kode-kode lain yang terinstal di server komputer. Jika ini berhasil ditembus, maka penyerang dapat mengambil alih sistem secara total. Pemanfaatan bug pada aplikasi client. Kadang-kadang kita tidak terlalu memperhatikan bug pada aplikasi client, misalnya adanya fitur berbahaya pada browser web yang dapat dijadikan batu loncatan oleh para penyerang. Pengaksesan tidak sah. Cara ini dilakukan dengan mendapatkan hak akses (user name dan password) secara tidak sah. Dengan menggunakan perangkat lunak tertentu, seperti password cracker, penyerang berusaha mengintip apa yang dilakukan pengguna saat login pada aplikasi web. Setelah memperoleh hak akses tersebut, mereka menggunakan untuk mengakses dan mengganggu sistem secara tidak sah. Penyadapan transmisi informasi (menguping). Informasi di internet seperti mobil yang berlalu lalang di jalan-jalan. Teknik ini termasuk tingkat tinggi. Dilakukan dengan cara mencegat dan menyadap informasi yang ditransmisikan antara web server dan web browser. Biasanya yang dituju adalah rahasia data-data seperti password, number account, number kartu kredit, dan rekaman transaksi online. ditingkatkanan dengan Denial of Service (DOS). Bentuk penyerangan ini lebih mengarah pada lingkungan jaringan bukan pada sistem. Serangan ini ditujukan untuk melumpuhkan suatu sistem dengan cara membanjiri jaringan dengan trafik yang sangat tinggi dan terus menerus melebihi kapasitas yang didukung. Hal ini mengakibatkan sistem jaringan berhenti bekerja dan tidak dapat melayani permintaan pengguna.
Secara umum tidak ada perangkat lunak yang 100% menjamin bebas dari gangguan keamanan. Hal ini karena celah-celah keamanan selalu muncul di sana sini yang mendukung penyerangan. Namun ada beberapa langkah yang dapat digunakan untuk mengurangi gangguan gangguan, antara lain: garis server secara aman, misalnya dengan tidak memberikan kesempatan pada pengguna untuk mengakses melalu shell, membuat fasilitas perekam kesalahan (log) dari server web. Terapkan izin atau hak akses pada direktori dan file secara ketat (buka Bab 4 untuk mempelajari izin lagi). Izin ini juga harus diterapkan pada file-file konfigurasi server web. Menuliskan program aplikasi web secara aman. Sering kali kesalahan yang tidak dilakukan pada pembuatan aplikasi menjadikan web tidak aman. Ada aplikasi yang diperiksa dan diuji berulangkali untuk memastikan celah keamanannya sangat minim. Mencegah dan memproteksi informasi dengan cara melakukan enkripsi (penyandian) agar tidak dapat dibaca oleh penyadap. Mengontrol akses ke web server. Cara ini dilakukan untuk melindungi data-data internal yang tidak dapat diakses dari luar. Beberapa cara dapat dilakukan seperti membatasi berdasarkan alamat IP atau domain, membatasi pengguna berdasarkan kategori tertentu, dan lain-lain.
No comments:
Post a Comment