22
d. Action Listener
Cara lain mengimplementasikan action handler dalam JSF adalah membuat sebuah class yang mengimplementasikan interface ActionListener.
Interface ini menjabarkan sebuah method single : public void processActionActionEvent event
Gambar 2.9 Contoh Method pada JSF
Object ActionEvent dilewatkan sebagai parameter dalam method yang menyediakan implementasi akses class kepada komponen yang disebabkan oleh
event. Hal ini serupa dengan bagaimana cara object Event bekerja di dalam pemrograman Swing.
e. Faces-Config.xml
Hal ini bertindak sebagai file konfigurasi utama untuk layer controller dari framework JSF. Sebagai lawan rekan pendampingnya di dalam framework Struts,
Dia tidak berisi masukan-masukan konfigurasi untuk aturan-aturan navigasi, seperti juga untuk JavaBean yang akan dikenali oleh framework.
Kesimpulan untuk layer Controller : Pengaturan satu kali :
Konfigurasi FacesServlet untuk digunakan dalam aplikasi. Untuk setiap halaman web yang berisi komponen UI JSF :
Buatlah sebuah masukan konfigurasi untuk backing model halaman. Buatlah aturan navigasi dimana menjelaskan dimana aplikasi bisa
mungkin pergi berikutnya setelah halaman.
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
23
2.2.2 Model
Framework JSF tidak menetapkan kembali setiap class atau komponen yang pengembang diwajibkan untuk terbiasa dengan menggambarkan tiap class
yang mengimplementasikan business logic dari aplikasi. Bagaimanapun juga, dalam Faces dibutuhkan untuk memiliki class yang akan menyimpan status
komponen UI dalam setiap halaman. Class ini disebut backing model elemen- elemen itu.
Class tersebut bukanlah class Model ketika dipandang dengan seksama di bawah perspektif dari arsitektur model 2. Bagaimanapun juga, ketika hanya
berpikir komponen-komponen UI, hal tersebut bisa dipahami untuk memanggil class ini adalah bagian dari Model, khususnya jika pengembang
membandingkannya dengan implementasi MVC dari class komponen Swing UI. Ingat, dalam Swing bahwa rendering layer disebut view, status komponen adalah
Model dan action handler adalah bagian Controller. Meskipun mereka disebut bagian dari Model, beberapa hal perlu
diperhatikan yang harus diambil dalam pengembangan dari class ini seperti mereka tidak mempengaruhi fungsi inti dari aplikasi yang telah dikembangkan
Model sesungguhnya. Sangat baik untuk mengingat bahwa komponen- komponen ini dimaksud untuk menyimpan status untuk komponen UI dan
mungkin menjelaskan operasi Dasar yang mengakses data yang tersimpan dimana dapat bertindak
sebagai method aplikasi. Mereka tidak dimaksudkan untuk mengerjakan proses
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
24
yang berat atau tiap-tiap proses sama sekali yang dapat digunakan kembali dalam aplikasi lain.
Membuat sebuah backing model untuk halaman yang berisi komponen UI JSF sangat mudah. Sama mudahnya seperti membuat sebuah JavaBean dengan
properties yang berhubungan dengan tiap komponen dalam sebuah halaman. Dalam hal ini, mereka serupa dengan object Action Form dalam framework Struts,
dengan perkecualian bahwa mereka tidak perlu untuk meng-extend setiap class dasar yang disediakan oleh framework.
Di bawah ini adalah sebuah contoh backing model untuk sebuah form login.
public class LoginPageBean { private String loginName;
private String password; public String getLoginName {
return loginName; }
public void setLoginNameString loginName { this.loginName = loginName;
} public String getPassword {
return password; }
public void setPasswordString password { this.password = password;
} }
Gambar 2.10 Contoh Backing Bean Form Login
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
25
Model ini kemudian dapat diakses dengan halaman setelah dikonfigurasikan dengan baik dalam file konfigurasi faces-config.xml. Konfigurasi masukan untuk
bean ini adalah ditiru di bawah sebagai acuan. managed-bean
managed-bean-nameloginPagemanaged-bean-name managed-bean-classsample.LoginPageBeanmanaged-bean-class
managed-bean-scoperequestmanaged-bean-scope managed-property
description The property that will store the users login name
description property-nameloginNameproperty-name
null-value managed-property
managed-property description
The property that will store the users password description
property-namepasswordproperty-name null-value
managed-property managed-bean
Gambar 2.11 Konfigurasi Backing Bean Pada JSF
2.2.3 View
View merupakan sebuah layer pada MVC yang mengandung keseluruhan detail dari implementasi user interface dengan melibatkan komponen grafis yang
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
26
menyediakan representasi proses internal aplikasi dan menuntun alur interaksi user terhadap aplikasi.
Dalam layer ini, JSF tidak hanya menyediakan untuk pengembang dengan tag custom dimana pengembang dapat menggunakan untuk menampilkan
interface Pengembang menggunakan JSP, Dan juga menyediakan untuk Pengembang dengan sebuah set komponen dan sebuah standardisasi API untuk
mengakses dan memanipulasi mereka. Sebuah diskusi komponen JSF bisa sangat diperumit jika Pengembang
mencoba untuk menjelaskan segalanya pada waktu yang sama. Sebagai gantinya, Pengembang akan mengambil sebuah tampilan yang sederhana terlebih dahulu,
dan menjelajah lebih dalam kemudian.
2.2.3.1 Integrasi JSF-JSP
Untuk menggunakan komponen JSF dalam halaman JSP Pengembang, Pengembang butuh untuk memasukkan dua tag library : core dan html. Core tag
library menjelaskan fungsi inti, seperti bagaimana cara untuk mengatur komponen JSF seperti kemampuan mereka untuk menyimpan status, dan lain-lain.HTML
library menjelaskan tag yang mengatakan kepada browser bagaimana cara render komponen JSF Pengembang menjadi sesuai dengan HTML mereka.
Begitu Pengembang telah memasukkan kedua tag library ini, Pengembang menggunakan tag custom yang mereka jelaskan. Mari Pengembang periksa tag-
tag yang telah Pengembang gunakan di dalam contoh-contoh yang terdahulu:
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
27
view - digambarkan di dalam library inti. Semua penjelasan tag-tag komponen JSF harus enclosed di dalam tag ini. Tag ini menyediakan
sebuah tempat untuk implementasi JSF untuk mampu menyimpan status dari komponen UI Pengembang. Ingat, tidak ada view, tidak ada status
yang disimpan untuk komponen-komponen Pengembang. form - digambarkan di dalam library HTML. Render sebuah form
dalam HTML. outputLabel - menggambarkan sebuah komponen label yang
berhubungan dengan komponen JSF lainnya. Komponen yang dihubungkan ditandai oleh nilai di dalam atribut for selama nilai yang
ditampilkan karena label adalah output dari field outputText yang terlampir di dalamnya.
outputText - hanya merender teks di dalam atribut nilainya menjadi yang sesuai dengan HTMLnya.
inputText - merender sebuah elemen input HTML berjenis text. inputSecret - merender sebuah elemen input HTML berjenis password.
commandButton - merender sebuah elemen input HTML berjenis submit.
Di bawah adalah screenshot output hasil dari halaman JSP di atas.
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
28
Gambar 2.12 Tampilan Layout JSF Pada Browser
2.2.3.2 Action Handlers
Di dalam listing HTML sebelumnya, Pengembang dapat melihat bahwa form Pengembang, ketika dirender dengan tag custom JSF, poin-poin hanya untuk
diri sendiri dengan atribut aktifnya. Aplikasi web tradisional akan menempatkan URL atau mapping URL komponen yang akan menangani submission form di
dalam atribut action. Benar-benar, Faces menangani aspek ini dengan cara yang berbeda.
JSF mengenalkan konsep pemrograman berbasis event ke dalam lingkungan web. Setiap komponen UI yang akan JSF sediakan diberi action user
yang sesuai atau input, menggenerate event dapat diproses oleh action handlers. Di dalam JSF di atas, sebagai ganti pemikiran bahwa menekan tombol
submit akan mengakibatkan submission form, pikir kan bahwa menekan tombol akan mengakibatkan sebuah ActionEvent di-generate, dimana kemudian dapat
diproses oleh sebuah handler. Meninjau lagi ke dalam halaman JSF :
h:commandButton action={loginPage.performLogin} value=Login
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
29
Pengembang temukan sebuah notasi serupa dengan yang digunakan dalam mengikat sebuah property bean untuk sebuah komponen UI. Niat disini sama
seperti : Pengembang mengikat sebuah method dengan nama setiap form login yang ditemukan di dalam sebuah bean yang disesuaikan dengan nama login page
kepada tombol komponen UI Pengembang. Sekarang, sebagai ganti penyimpanan nilai untuk komponen, method batas beraksi sebagai action handler untuk media
tombol. Ketika user meng-klik pada tombol ini, framework memanggil action
handler yang ditunjuk. Lalu menggunakan hasil String dari action handler untuk menentukan halaman mana yang akan pergi ke yang berikutnya dengan mencari
nya di dalam aturan navigasi yang dikonfigurasikan. Untuk mendapatkan suatu pengertian mendalam yang lebih baik di
komponen-komponen yang JSF sediakan, akan menjadi lebih baik ketika melihat pada komponen Swing
Setiap komponen Swing menjelaskan sebuah widget interface, masing- masing dengan kemampuannya yang dapat diakses secara program
menggunakan API. Contoh : sebuah komponen JTextField menampilkan sebuah field text yang dapat menerima input dari user. Nilai dapat diterima
menggunakan getText. Masing-masing komponen juga berbagi beberapa properties dan method
yang bersifat umum untuk semua komponen yang lainSebagai contoh, sebuah method field text setName.
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
30
Beberapa komponen Swing adalah Container, dimana mereka dapat menerima komponen-komponen lain untuk membentuk suatu gabungan
yang kemudian dapat ditampilkan kepada user atau handler. Contoh : JPanel, JFrame keduanya dapat digunakan untuk diisikan oleh komponen-
komponen lain. Komponen Swing bersifat berbasis event dan interaksi user dengan komponen
Swing mengakibatkan generate sebuah event yang dilaksanakan oleh listener yang telah didaftarkan.
sumber: The Java EE 6 Tutorial Basic Concept Fourth Edition, 2010
2.3 Primefaces Technology
Primefaces merupakan sumber komponen JSF suite yang opensource yang bundel lebih dari 100 komponen dengan built-in mendukung AJAX. Ini
didasarkan pada YUI dan library Javascript JQuery. Primefaces memiliki desain yang sederhana, ringan yang sepenuhnya kompatibel dengan komponen JSF
library lainnya. Primefaces juga mendukung AJAX push, dan memiliki komponen UI yang mendukung pada ponsel dikenal sebagai touch faces.
Saat ini, Primefaces mendukung JSF 2.0 dengan 2.0.0.RC dan 2.0.0- SNAPSHOT. Kemampuan Java EE 6 untuk menggabungkan fragment web.xml
yang berasal dari kerangka lain atau disebut dengan pihak ketiga.
2.3.1 Instalasi Primefaces
Primefaces memiliki dokumen library utama yang dikemas dalam bentuk jar file disebut dengan Primefaces-{version}. Jar. Ada dua cara yang dapat
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
31
dilakukan untuk download library jar ini, library tersebut bisa di download dari homepage Primefaces atau Bagi pengguna maven dapat bisa mengambil file
tersebut melalui maven. Untuk mendapatkan file tersebut secara jelasnya bisa dilihat pada pilihan berikut:
a. Download secara manual Untuk dapat mengunduh file jar tersebut untuk langkah awalnya harus
jelas aplikasi apa yang akan dibuat nanti, apakah berbasis mobile, web enterprise atau standar web, setelah ditentukan untuk file JAR bisa diambil
pada situs: http:www.primefaces.orgdownloads.html
b. Download melalui maven Ketika melakukan instalasi atau download melalui maven ada beberapa
konfigurasi yang harus dilakukan, untuk konfigurasi awal melakukan penganturan dependency pada aplikasi dengan :
dependency groupIdorg.primefacesgroupId
artifactIdprimefacesartifactId version2.2version
dependency
Setelah melakukan pengaturan dependency pada aplikasi, selanjutnya melakukan pengaturan mengenai repository Primefaces pada maven
seperti pada keterangan di bawah :
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
32
repository idprime-repoid
namePrime Technology Maven Repositoryname urlhttp:repository.prime.com.trurl
layoutdefaultlayout repository
2.3.2 Dependencies
Seperti komponen java yang lainnya, Primefaces juga memiliki beberapa syarat yang harus disediakan ketika akan menggunakan teknologi Primefaces,
salah satunya yaitu harus tersedia JRE dengan versi 5+ dan untuk implementasinya menggunakan JSF 2.0+, itu merupakan syarat mutlak yang harus
ada agar Primefaces bisa berfungsi sebagaimana mestinya. Sebagai informasi lebih lanjut berikut di bawah ini akan terdapat daftar dari kebutuhan Primefaces:
Tabel 2.1 Daftar Kebutuhan Sistem
Kebutuhan Versi
Status Keterangan
JSF runtime 2.0+
Wajib Apache MyFace atau Oracle
Mojora Itext
2.1.7 Pilihan
PDF export yang mendukung untuk komponen DataExporter
Commons-fileupload 1.2.1
Pilihan File Upload
Apache POI 3.2-FINAL
Pilihan Excel export yang mendukung untuk komponen DataExporter
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
33
2.3.3 Konfigurasi dan Hello World
Untuk integrasi Primefaces pada aplikasi yang akan dikembangkan pada dasarnya tidak memerlukan konfigurasi yang begitu rumit melainkan cukup
mudah dan hampir sama dengan teknologi yang lainnya. Setelah mengunduh file utama Primefaces pengembang tinggal menambahkan properties pada class path
aplikasi. Berikut ini contoh coding implementasi pada halaman user interfaces : html xmlns=http:www.w3c.org1999xhtml
xmlns:h=http:java.sun.comjsfhtml xmlns:p=http:primefaces.prime.com.trui
h:head h:head
h:body
p:spinner h:bodyhtml
sumber: primefaces.org , 2011
2.3.4 Komponen Primefaces
Primefaces memiliki banyak komponen yang sudah mendukung untuk teknologi AJAX dengan tampilan simple dan ringan pengembang bisa
menggunakan library ini untuk membangun aplikasi enterprise. Berikut beberapa jenis komponen yang dimiliki Primefaces dan diterapkan dalam pembuatan
aplikasi yang akan dibuat antara lain: Input element
merupakan komponen yang berkaitan dengan interaksi pengguna terhadap aplikasi yang memberikan masukan dari pengguna yang nanti akan diolah
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
34
oleh sistem, contoh: Calendars, Popup, Sliders, Captcha, Auto Complete, Button, Carousel , Color Picker, context menu dll.
Gambar 2.13 Komponen Inputtext
Gambar 2.14 Komponen Color Picker
Gambar 2.15 Komponen Kalender
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
35
Charts Charts pada dasarnya suatu komponen yang berguna untuk memberikan
informasi secara grafik, biasanya digunakan untuk pelaporan yang sifatnya grafik. Contoh charts antara lain : Bar chart, pie chart, line graph dll.
Gambar 2.16 Komponen Pie Chart
Gambar 2.17 Komponen Line Chart
Image viewer Merupakan suatu fitur komponen yang disediakan oleh Primefaces yang
digunakan untuk menampilkan gambar-gambar, seperti galeri foto. Pada
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
36
komponen ini sudah mendukung dengan teknologi AJAX sehingga akan memudahkan bagi pengembang. Gambar di bawah adalah contoh
screenshoot untuk komponen image viewer.
Gambar 2.18 Komponen Image Viewer
Popup windows Berguna sebagai menampilkan media informasi dalam bentuk popup,
contoh : Dialog boxes, menus, Mac-like “Growl” notification dll. untuk gambar lengkapnya bisa dilihat pada gambar di bawah :
Gambar 2.19 Komponen Popup Dialog
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
37
Gambar 2.20 komponen Context Menu
Data Table Suatu komponen yang berfungsi untuk menampilkan informasi berupa
data tabel yang didapat dari database ataupun data static, komponen ini juga dilengkapi dengan fitur paging, sehingga akan mempermudah
pengolahan data yang akan tampil ketika data tersebut banyak.
Gambar 2.21 Komponen Data Tabel
Menu Bar Komponen ini sama halnya seperti komponen menu, yang berperan
sebagai pengatur navigasi pada suatu aplikasi.
Gambar 2. 22 Komponen Menu Bar
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
38
2.3.5 Partial Rendering
Primefaces menyediakan fitur rendering dan proses pengolahan partial berdasarkan standar JSF 2 API untuk memungkinkan proses di JSF lifecyle dan
dan komponen apa yang akan terdapat fitur AJAX semua bisa dikonfigurasi. Selain komponen seperti AutoComplete, Data Table, slider dengan built-
in kemampuan AJAX, Primefaces juga menyediakan PPR generik Partial Rendering Halaman mekanisme untuk memperbaharui JSF komponen dengan
AJAX. Beberapa komponen yang dilengkapi dengan atribut PPR misalnya update, process, onstart, oncomplete.
Primefaces AJAX Framework adalah didasarkan pada sisi server API standar JSF 2. Tidak ada tambahan artfacts seperti kustom AJAXViewRoot,
AJAXStateManager, AJAXViewHandler, Servlet Filter, HtmlParsers,
PhaseListeners dan sebagainya. PrimeFaces bertujuan untuk tetap bersih, cepat dan ringan.
Pada sisi klien untuk implementasi API seperti Mojarra dan My faces, Primefaces script didasarkan pada JavaScript library yang paling populer; JQuery
yang jauh lebih diuji, stabil tentang AJAX, penanganan dom, dom pohon melintasi dari JSF implementasi script.
Bila menggunakan PPR perlu adanya penentuan komponen-komponen mana yang diperbarui menggunakan AJAX. Jika suatu komponen pemicu
permintaan PPR berada di tempat container yang sama dengan komponen yang akan diperbarui maka bisa dapat menggunakan id server secara langsung. Dalam
bagian ini meskipun menggunakan Command Button, yang sama berlaku untuk
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
39
setiap komponen yang mampu PPR seperti Command Link, polling, Remote Command dan lain-lain.
h:form p:commandButton update=display
h:outputText id=display value={bean.value} h:form
a. Single komponen PPR berbeda Naming Containers Jika halaman pada implementasi PPR memiliki Naming Container yang
berbeda misalnya dua bentuk, pengembang juga perlu menambahkan id container untuk pencarian ekspresi sehingga PPR dapat menangani
permintaan yang dipicu di dalam Naming Container untuk melakukan pembaharuan pada container tersebut.
h:form id=form1 p:commandButton update=:form2:display
h:formh:form id=form2 h:outputText id=display value={bean.value}h:form
b. Multiple Komponen PPR Beberapa Komponen untuk memperbarui dapat ditentukan dengan
menyediakan daftar id dipisahkan oleh koma, spasi atau bahkan keduanya. h:form p:commandButton update=display1,display2
h:outputText id=display1 value={bean.value1} h:outputText id=display2 value={bean.value2}h:form
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
40
2.3.6 AJAX PushComet
Comet adalah model yang memungkinkan server web untuk mendorong data ke browser. Lelang dan chatting merupakan salah satu contoh dari
implementasi comet. Comet dapat diimplementasikan dalam beberapa cara. Berikut ini adalah skema yang menjelaskan teknik ini.
Gambar 2.23 Prinsip Kerja Macam-Macam AJAX Pada JSF
Di bawah ini merupakan penjelasan dari skema gambar di atas :
a. Polling Regular pemungutan suara tidak komet nyata, pada dasarnya browser
mengirimkan request ke server berdasarkan spesifik interval. Pendekatan ini tidak ada hubungannya dengan komet dan hanya disediakan untuk
perbandingan.
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
41
b. Long-Polling Browser permintaan ditangguhkan dan hanya kembali ketika server
memutuskan untuk mendorong data, setelah respon diambil browser menghubungkan dan mulai menunggu data lagi.
c. Streaming Http Dengan metode seperti ini maka respon tidak pernah dilakukan dan klien
selalu tetap terhubung, data push streaming ke klien akan terus terhubung.
Pada versi Primefaces saat ini didasarkan terhadap http-streaming pada proses pengambilan data pada server yang tergolong memiliki performa yang
kurang, oleh karena itu pada versi terbarunya permasalahan ini akan diselesaikan sehingga proses pengambilan data bisa lebih bagus.
sumber: Primefaces user’s guide 3.2 , 2011
2.4 Data Pustaka Distribusi Perusahaan di Jawa Timur
Dengan banyaknya perusahaan baik yang berskala besar maupun kecil, ini menunjukkan bahwa kian meningkatnya dunia usaha dari tahun ke tahun. Pada
dasarnya semua perusahaan yang bergerak di bidang jasa memiliki tujuan yaitu menjaga kesinambungan perusahaan di masa yang akan datang.
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
42
Tabel 2.2 Data Perusahaan Propinsi Jawa Timur
sumber: jatimprov.go.id
Pada Tabel 2.2 merupakan sebagian data perusahaan yang tersebar pada beberapa kota di Jawa Timur, pada data tersebut menggolongkan skala perusahaan
dari menengah, sedang hingga besar. Untuk data perusahaan terbanyak berada pada kota Surabaya selebihnya tersebar ke kota-kota lain. Untuk data perusahaan
yang lain bisa dilihat pada tabel di bawah, yang secara total bisa dilihat jumlah
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
43
perusahaan mencapai 3.337 perusahaan dan jumlah ini akan terus meningkat seiring berkembangnya industri.
Tabel 2.3 Data Perusahaan Propinsi Jawa Timur sumber: jatimprov.go.id
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.
44
BAB III ANALISA DAN PERANCANGAN APLIKASI
3.1 Analisa Permasalahan
Aplikasi yang akan dibuat pada skripsi ini merupakan aplikasi untuk memetakan perusahaan-perusahaan yang tersebar di Jawa Timur dengan
memanfaatkan Google Map API, pada sistem pemetaannya menggunakan peta dasar yang diambil dari Google Maps,
teknologi dari Google ini yang memungkinkan pengguna untuk melihat peta atau mencari lokasi tertentu secara
digital. Aplikasi pemetaan ini bersifat komersial dan gratis, dalam arti bisa diakses
oleh banyak orang yang ingin melihsat informasi atau mendaftarkan perusahaan- perusahaan yang dimiliki pada sistem. Para owner perusahaan atau pihak yang
diberi kewenangan oleh perusahaan untuk menginformasikan perusahaan bisa menyampaikan informasi secara detil, mulai dari deskripsi singkat perusahaan,
hasil usaha dan fotonya, cabang-cabang yang dimiliki dan bahkan foto-foto kegiatan perusahaan bisa disampaikan guna menunjang dalam hal promosi.
Pada proses pendaftaran perusahaan ke dalam aplikasi, tahap awal akan terdapat registrasi untuk mendapatkan akun yang berguna untuk melakukan akses
pendaftaran perusahaan kedalam sistem, pada tahap registrasi berisi mengenai informasi data pribadi pewakilan dari perusahaan dan harus bersifat valid karena
akan ada verifikasi akun melalui email, jika akun sudah terverifikasi maka sudah
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh kHak Cipta © milik UPN Veteran Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.arya tulis ini tanpa mencantumkan dan menyebutkan sumber.