Action Listener Data Pustaka Distribusi Perusahaan di Jawa Timur

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.