akan terus tumbuh hingga tidak ada pilihan lain selain menutup dan membuka lagi koneksi ke server.
2.4. HTML Dynamic Document
Model dokumen HTML standar merupakan model statik dimana dokumen merupakan dokumen tetap yang tidak dapat berubah. Berkebalikan dengan
dokumen statis, dokumen dinamis merupakan model dimana isi dari dokumen dapat berubah secara dinamis. Dokumen dinamis merupakan hasil dari beberapa
transaksi yang dimulai dari sisi client maupun server. Terdapat dua mekanisme untuk dinamik dokumen yaitu client-pull dan
server-push. Pada client-pull client melakukan serangkaian transaksi untuk mendapatkan pembaruan dokumen, sedangkan pada server-push transaksi
dilakukan oleh server server yang aktif melakukan pembaruan dokumen. -
Server-Push
Dalam mekanisme server-push, dinamik dokumen dikendalikan dari sisi server. Mekanisme ini memungkinkan server untuk mengirim push
data kepada client. Koneksi antara client dengan server akan tetap terbuka setelah transaksi awal dan server secara berkala akan
megirimkan data baru ke client kemudian memperbarui tampilan. Koneksi akan tetap terbuka sampai data terakhir terkirim.
-
Client-Pull
Client-pull merupakan mekanisme dalam dokumen dinamik dimana cleint melakukan serangkaian transaksirequest untuk mendapatkan
dokumen dan memperbarui tampilan. Dalam dokumen client-pull terdapat kode html yang memberitahu client untuk secara berkala
melakukan request dan men-download dokumen dari satu atau lebih server yang ada pada network dan meng-update tampilan secara dinamis.
Dokumen client-pull relatif mudah untuk digunakan. Yang diperlukan hanya menambahkan tag meta ke dalam header dokumen HTML. Tag
tersebut berfungsi untuk memberi tahu browser untuk menampilkan dokumen dalam rentang waktu tertentu.
2.5. Java Server FacesJSF
Java Server Faces merupakan framework java untuk membuat antarmuka aplikasi web. JSF menyederhanakan pengembangan tampilan
antarmuka yang terkadang sulit dalam pengembangan aplikasi web. JSF mendefinisikan satu set komponen dasar antarmuka ditambah dengan beberapa
kemampuan tambahan, serta API Application Programming Interface untuk memperluas komponen standar atau mengembangkan komponen baru.
- Dasar Tag JSF
Halaman JSF terdiri dari berbagai elemen. Elemen merupakan sebuah string yang dipisahkan oleh tag. Setiap tag memiliki nama dan atribut yang dimulai
dengan ‘’ dan diakhiri dengan ‘’. Terdapat dua jenis elemen dalam JSF, yaitu elemen sederhana dan elemen majemuk.
Elemen sederhana terdiri dari satu tag yang berakhiran ‘’. Sebagai contoh adalah tag commandButton:
h:commandButton value=Save
List 2.1. Contoh Elemen Sederhana Elemen majemuk terdiri dari pasangan tag awal dan tag akhir dengan nama
yang sama. Sebagai contoh adalah tag panelGrid:
h:panelGrid columns=2 Masukkan nama anda:
h:inputText value={user.name} h:panelGrid
List 2.2. Contoh Elemen Majemuk -
Elemen standar halaman JSF Semua halaman JSF memiliki struktur dasar sbagai berikut:
?xml version=1.0 encoding=UTF-8 ? DOCTYPE html PUBLIC -W3CDTD XHTML 1.0 TransitionalEN
http:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd html xmlns=http:www.w3.org1999xhtml
xmlns:h=http:java.sun.comjsfhtml h:head
titleA Titletitle h:head
h:body -- Body contents go here. --
h:body html
List 2.3. Elemen Standar JSF
Karena JSF merupakan aplikasi XML, baris pertama merupakan tag khusus yang mengidentifikasi sebagai XML.
?xml version=1.0 encoding=UTF-8 ?
List 2.4. Tag XML Tag kedua berfungsi untuk mengidentifikasi aplikasi XML yang digunakan
dalam dokumen.
DOCTYPE html PUBLIC - W3C DTD XHTML 1.0 Transitional EN http:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd
List 2.5. Tag Identifikasi XML Tag html menandai awal dan akhir halaman. Tag ini berisi satu atau lebih
atribut namespace XML yang menyatakan library yang digunakan dalam dokumen.
html xmlns=http:www.w3.org1999xhtml xmlns:h=http:java.sun.comjsfhtml
List 2.6. Tag HTML -
Managed Beans
Managed beans merupakan kelas java yang pada umumnya digunakan untuk mewakili input pengguna. Berikut ini merpakan contoh Managed Beans
sederhana:
import javax.faces.bean.ManagedBean; import javax.faces.bean.SessionScoped;
ManagedBean SessionScoped
public class Mahasiswa{
public Mahasiswa{} private
String nama; private
String nim; public
void setNamaString nama{ this.nama = nama;
} public
String getNama{ return nama;
} public
void setNamaString nama{ this.nama = nama; }
public String getNama{
return nama; }
}
List 2.7. Managed Bean
Sebuah kelas Java Bean adalah kelas yang harus memiliki konstruktor tanpa parameter dan satu atau lebih atribut. Setiap atribut harus memiliki metode set dan
get untuk mengakses atribut tersebut. Dalam kelas Java Bean terdapat sepasang anotasi:
ManagedBean SessionScoped
List 2.8. Anotasi Anotasi tersebut mengatur metadata khusus yang ditanamkan java compiler
ke kelas yang dihasilkan. Server akan membaca anotasi kemudian anotasi akan mengarahkan server untuk menggunakan kelas tersebut.
2.6. ICEFaces Framework