Java Web Client

download Java Web Client

of 19

description

www.digizoneku.comPlatform Java EE menggunakan model aplikasi multitier terdistribusi untuk aplikasi enterprise. Aplikasi logika dibagi menjadi komponen-komponen sesuai dengan fungsinya, dan berbagai komponen aplikasi yang membuat sebuah aplikasi Java EE yang diinstal pada mesin yang berbeda tergantung pada tier di lingkungan multitier Java EE. Gambar 1-1 menunjukkan dua multitier aplikasi Java EE yang dibagi ke dalam tingkatan yang dijelaskan di sana. Komponen-komponen Java EE:   KompoN.B- Info cara mencegah dan mengobati berbagai penyakit (www.herbanesia.com)- info cara tambah tinggi badan, max usia 35th (www.smarttaller.com)- info cara turun berat badan (www.dietsehat911.com)- layanan internet cepat tanpa batas, tanpa quota, full speed 24/7 (www.digizoneku.com)- agen pulsa murah all operator (www.digizonecell.com)

Transcript of Java Web Client

www.digizoneku.com

Platform Java EE menggunakan model aplikasi multitier terdistribusi untuk aplikasi enterprise. Aplikasi logika dibagi menjadi komponen-komponen sesuai dengan fungsinya, dan berbagai komponen aplikasi yang membuat sebuah aplikasi Java EE yang diinstal pada mesin yang berbeda tergantung pada tier di lingkungan multitier Java EE. Gambar 1-1 menunjukkan dua multitier aplikasi Java EE yang dibagi ke dalam tingkatan yang dijelaskan di sana. Komponen-komponen Java EE:

Komponen Client-tier berjalan di mesin klien. Komponen Web-tier berjalan di server Java EE. Komponen Business-tier berjalan di server Java EE. Sofware enterprise information system (EIS)-tier berjalan di server EIS.

Meskipun aplikasi Java EE dapat terdiri dari tiga atau empat tingkatan yang ditunjukkan dalam Gambar 1-1, Java EE aplikasi multitier umumnya dianggap aplikasi tiga tingakatan (tier) karena mereka didistribusikan ke tiga lokasi: mesin klien, Java EE mesin server, dan mesin database atau legacy di bagian belakang. Aplikasi tiga tier yang berjalan dengan cara ini memperpanjang klien dua tingkat standar dan model server dengan menempatkan server aplikasi multithreaded antara aplikasi klien dan penyimpanan back-end. Gambar 1-1 Multitier Aplikasi

Komponen Java EE Java EE aplikasi yang terdiri dari komponen. Java EE komponen adalah unit mandiri fungsional perangkat lunak yang dirakit menjadi aplikasi Java EE dengan class yang terkait dan file dan yang berkomunikasi dengan komponen lainnya. Java EE mendefinisikan Java EE komponen-komponen sebagai berikut:Sistem Terdistribusi Bimo Adi Pradono

www.digizoneku.com

Aplikasi klien dan applet adalah komponen yang berjalan di klien. Java Servlet, JavaServer Faces, dan JavaServer Pages (JSP) komponen adalah komponen web yang berjalan di server. Enterprise JavaBeans (EJB) komponen adalah komponen bisnis yang berjalan di server.

Java EE komponen ditulis dalam bahasa pemrograman Java dan dicompile dalam cara yang sama seperti setiap program dalam bahasa pemrograman. Perbedaan antara komponen Java EE dan "standar" Java kelas adalah bahwa Java EE komponen dirangkai menjadi suatu aplikasi Java EE, diverifikasi dengan baik yang terbentuk dan sesuai dengan spesifikasi Java EE, dan dikerahkan untuk produksi, di mana mereka dijalankan dan dikelola oleh server Java EE. Java EE Clients Java EE KlienWeb klien

Web klien terdiri dari dua bagian: (1) halaman web dinamis yang berisi berbagai jenis bahasa markup (HTML, XML, dan sebagainya), yang dihasilkan oleh komponen web yang berjalan di web tier, dan (2) web browser, yang membuat halaman yang diterima dari server. Web klien terkadang disebut thin client. Thin client biasanya bukan query database, yang menjalankan aturan bisnis yang kompleks, atau menghubungkan ke aplikasi warisan. Bila menggunakan thin client, operasi berat tersebut dioff-load ke enterprise beans yang mengeksekusi pada server Java EE, sehingga dapat memanfaatkan keamanan, kecepatan, layanan, dan kehandalan Java server-side teknologi EE.Aplikasi Klien

Aplikasi client berjalan pada mesin klien dan menyediakan cara bagi pengguna untuk menghandle tugas-tugas yang membutuhkan user interface yang lebih banyak dibanding yang dapat disediakan oleh bahasa markup. Biasanya memiliki GUI yang dibuat dari Swing atau Abstrak Window Toolkit (AWT) API. Aplikasi klien langsung mengakses enterprise beans yang berjalan di bisnis tier. Namun, jika persyaratan aplikasi membutuhkannya, aplikasi klien dapat membuka koneksi HTTP untuk membangun komunikasi dengan servlet berjalan di web tier. Aplikasi klien yang ditulis dalam bahasa selain Java dapat berinteraksi dengan Java EE 5 server, meng-enable platform Java EE 5 untuk beroperasi dengan sistem warisan, klien, dan bahasa non-Java.Java EE Server Communications Server Java EE Komunikasi

Klien berkomunikasi dengan bisnis tier yang berjalan di server Java EE, baik secara langsung atau, seperti dalam kasus klien berjalan di browser, dengan melalui halaman JSP atau servlet berjalan di web tier. Gambar 1-2 Server Komunikasi

Sistem Terdistribusi

Bimo Adi Pradono

www.digizoneku.com

Aplikasi Java EE menggunakan thin klien berbasis browser atau aplikasi thick klien. Dalam memutuskan mana yang akan digunakan, haruslah menyadari trade-off antara menjaga fungsionalitas pada klien dan dekat dengan pengguna (thick klien) dan off-loading sebanyak mungkin fungsi ke server (thin klien). Semakin banyak fungsi yang di-off-load ke server, semakin mudah untuk mendistribusikan, menyebarkan, dan mengelola aplikasi. Java EE komponen web merupakan servlet atau halaman yang dibuat menggunakan teknologi JSP (Halaman JSP) dan / atau teknologi JavaServer Faces. Servlets adalah kelas dalam bahasa pemrograman Java yang secara dinamis membangun respon dan memproses request. JSP pages adalah dokumen berbasis teks yang mengeksekusi sebagai servlet tetapi memungkinkan pendekatan yang lebih alami untuk membuat konten statis. JavaServer Faces dibangun di atas servlet dan teknologi JSP serta menyediakan framework untuk aplikasi web. Seperti ditunjukkan dalam Gambar 1-3, web tier, seperti klien tier, mungkin termasuk komponen JavaBeans untuk mengelola input pengguna dan mengirim masukan bahwa untuk enterprise beans berjalan di bisnis tier untuk diproses. Gambar 1-3 Aplikasi Web dan Java EE Tier

Sistem Terdistribusi

Bimo Adi Pradono

www.digizoneku.com

Bisnis Komponen Bisnis code merupakan logika yang memecahkan atau memenuhi kebutuhan domain usaha tertentu seperti perbankan, ritel, atau keuangan, ditangani oleh enterprise beans yang berjalan di bisnis tier.

Java Web klienProgram yang akan digunakan sebagai contoh untuk tugas web klien ini adalah aplikasi Dukes Bank. Dalam aplikasinya itu, web klien digunakan oleh pelanggan untuk mengaksses informasi rekening dan melakukan operasi pada account. Tabel di bawah memberi gambaran daftar fungsi klien, URL yang digunakan untuk mengakses fungsi, dan komponen yang melaksanakan fungsi. Gambar menunjukkan layar account history. Tabel 1-1 Web Klien Fungsi Home page URL Alias/main /logon

Halaman JSPmain.jsp logon.jsp logonError.jsp logoff.jsp accountList.jsp accountHist.jsp

Komponen JavaBeans

Log on or off the application /logonError/logoff

Daftar account List the history of an account

/accountList /accountHist

AccountHistoryBean

Transfer dana antar rekening /transferAck Menarik dan deposit dana Error handling/atm /atmAck /error

/transferFunds transferFunds.jsp TransferBean transferAck.jsp atm.jsp atmAck.jsp error.jsp ATMBean

Sistem Terdistribusi

Bimo Adi Pradono

www.digizoneku.com

Gambar 2-1 Account History

Strategi desainTugas utama dari halaman JSP di Aplikasi Dukes Bank adalah presentasi. Sebuah strategi untuk mengembangkan Halaman JSP adalah untuk meminimalkan jumlah scripting yang tertanam di halaman. Untuk mencapai hal ini, tugas-tugas yang pengolahannya dinamis, sebagian besar didelegasikan kepada enterprise beans, tag kustom, dan komponen JavaBeans. Halaman-halaman JSP pada aplikasi Dukes Bank menggunakan enterprise beans untuk menangani interaksi dengan database. Selain itu, halaman JSP sangat tergantung pada komponen JavaBeans untuk interaksi dengan enterprise beans. BookDB JavaBeans komponen bertindak sebagai front end ke database atau sebagai fasad ke antarmuka yang disediakan oleh enterprise beans. TransferBean juga memainkan peran yang sama. Komponen JavaBeans lain memiliki banyak fungsi yang lebih kaya. ATMBean memanggil metode enterprise beans dan set ACK string sesuai dengan masukan pelanggan, dan AccountHistoryBean mengolah data yang dikembalikan dari enterprise beans untuk menyajikan tampilan data yang dibutuhkan oleh pelanggan.Sistem Terdistribusi Bimo Adi Pradono

www.digizoneku.com

Web klien menggunakan mekanisme template yang dilaksanakan oleh tag kustom untuk menjaga tampilan umum di semua halaman JSP. Mekanisme template terdiri dari tiga komponen: template.jsp menentukan struktur dari masing-masing layar. Menggunakan insert tag

untuk membuat sebuah layar dari subkomponen. screendefinitions.jsp mendefinisikan subkomponen yang digunakan oleh masingmasing layar. Semua layar mempunyai banner yang sama, tetapi judul dan konten tubuh yang berbeda. Dispatcher , sebuah servlet yang memproses permintaan dan mem-forward ke template.jsp .

Kemudian, web klien menggunakan tag logika tiga - iterate , equal , dan notEqual - dari Struts tag library untuk melakukan kontrol aliran. P.S: karena file program Dukes bank itu panjang, maka saya memutuskan untuk tidak menyertakan di laporan ini. File Dukes bank bisa di-download di http://java.sun.com/j2ee/tutorial/1_3-fcs/doc/Ebank4.html

Web Klien Life CycleMenginisialisasi Komponen Klien Tanggung javab untuk mengelola enterprise beans yang digunakan oleh web klien terletak pada kelas BeanManager. Membuat pelanggan, rekening, dan pengontrol transaksi enterprise beans dan menyediakan metode untuk mengambil beans. Ketika di-instantiated, BeanManager mengambil antarmuka home untuk setiap bean dari helper class EJBGetter dan membuat instance dengan memanggil metode create dari antarmuka home. Karena ini adalah fungsi tingkat aplikasi, BeanManager sendiri dibuat dan disimpan sebagai atribut konteks oleh ContextListener ketika klien pertama kali diinisialisasi.public class BeanManager { private CustomerController custctl; private AccountController acctctl; private TxController txctl; public BeanManager() { if (custctl == null) { try { CustomerControllerHome home = EJBGetter.getCustomerControllerHome(); custctl = home.create(); } catch (RemoteException ex) { System.out.println("..."); } catch (CreateException ex) { System.out.println(); } catch (NamingException ex) { System.out.println(); } }

Sistem Terdistribusi

Bimo Adi Pradono

www.digizoneku.compublic CustomerController getCustomerController() { return custctl; } ... } public final class ContextListener implements ServletContextListener { private ServletContext context = null; ... public void contextInitialized(ServletContextEvent event) { this.context = event.getServletContext(); context.setAttribute("beanManager", new BeanManager()); context.log("contextInitialized()"); } ... }

Pengolahan Request Semua request untuk URL sudah tercantum dalam Tabel 1-1 dan dipetakan ke komponen Web dispatcher, yang dilaksanakan oleh Dispatcher servlet:public class Dispatcher extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response) { ... String selectedScreen = request.getServletPath(); request.setAttribute("selectedScreen", selectedScreen); BeanManager beanManager = getServletContext().getAttribute( "beanManager"); ... if (selectedScreen.equals("/accountHist")) { ... } else if (selectedScreen.equals("/transferAck")) { String fromAccountId = request.getParameter("fromAccountId"); String toAccountId = request.getParameter("toAccountId"); if ( (fromAccountId == null) || (toAccountId == null)) { request.setAttribute("selectedScreen", "/error"); request.setAttribute("errorMessage", messages.getString("AccountError")); } else {

Sistem Terdistribusi

Bimo Adi Pradono

www.digizoneku.comTransferBean transferBean = new TransferBean(); request.setAttribute("transferBean", transferBean); transferBean.setMessages(messages); transferBean.setFromAccountId(fromAccountId); transferBean.setToAccountId(toAccountId); transferBean.setBeanManager(beanManager); try { transferBean.setTransferAmount(new BigDecimal(request. getParameter("transferAmount"))); String errorMessage = transferBean.populate(); if (errorMessage != null) { request.setAttribute("selectedScreen", "/error"); request.setAttribute("errorMessage", errorMessage); } } catch (NumberFormatException e) { request.setAttribute("selectedScreen", "/error"); request.setAttribute("errorMessage", messages.getString("AmountError")); } } ... try { request.getRequestDispatcher("/template.jsp"). forward(request, response); } catch(Exception e) { } } }

Ketika permintaan dikirim, Dispatcher melakukan: 1. Mengambil dan menyimpan request URL yang masuk dalam atribut permintaan selectedScreen. Hal ini dilakukan karena URL akan diubah bila permintaan tersebut diteruskan ke halaman aplikasi template. 2. Membuat komponen JavaBeans dan menyimpan beans sebagai atribut permintaan.

Sistem Terdistribusi

Bimo Adi Pradono

www.digizoneku.com

3. Mengurai dan memvalidasi parameter permintaan. Jika parameter tidak valid, Dispatcher dapat me-reset alias permintaan ke error page. Jika tidak, akan menginisialisasi komponen JavaBeans. 4. Memanggil metode populate dari komponen JavaBeans. Metode ini mengambil data dari enterprise beans dan memproses data sesuai dengan pilihan yang ditetapkan oleh pelanggan. 5. Meneruskan permintaan tersebut ke template.jsp . Seperti disebutkan sebelumnya, template.jsp men-generate respon dengan memasukkan tanggapan dari subkomponen. Jika permintaan adalah GET , subkomponen body biasanya mengambil data dari enterprise beans secara langsung. Jika tidak mengambil data dari komponen JavaBeans, maka akan diinisialisasi oleh Dispatcher .

Gambar 2-2 Web Komponen Interaksi

Melindungi Web resourceDalam platform J2EE, Web resource dilindungi dari akses anonim dengan menetapkan peran keamanan yang mana yang dapat mengakses resource. Hal ini dikenal sebagai security constraint. Web container menjamin bahwa hanya pengguna tertentu yang bertindak dalam peran yang ditentukan di dalam security constraint, dapat mengakses resource. Aplikasi tersebut harus menetapkan cara bagi pengguna untuk mengidentifikasi diri dan container Web harus mendukung pemetaan peran untuk pengguna.

Sistem Terdistribusi

Bimo Adi Pradono

www.digizoneku.com

Dalam web klien Dukes Bank, semua URL yang tercantum dalam Tabel 1-1 dibatasi oleh peran keamanan BankCustomer. Aplikasi ini memerlukan pengguna untuk mengidentifikasikan dirinya melalui mekanisme-form login. Ketika seorang pelanggan mencoba mengakses URL web klien, dan belum disahkan, container berbasis web menampilkan URL-form login /logon yang dipetakan ke halaman JSP logon.jsp. Halaman ini berisi formulir yang membutuhkan pelanggan untuk memasukkan identifier dan password. Container Web mengambil informasi ini, memetakan ke security, dan memverifikasi bahwa perannya sesuai dengan yang ditetapkan dalam security constraint. Agar container Web bisa memeriksa validitas dari informasi otentikasi dan melakukan pemetaan, harus dilakukan dua langkah ketika menyebarkan aplikasi: 1. Menambahkan grup, ID, dan password pelanggan ke default container. 2. Memetakan peran BankCustomer kepada pelanggan atau grup pelanggan. Setelah pelanggan dikonfirmasi, pengenal yang diberikan oleh pelanggan digunakan sebagai kunci untuk mengidentifikasi rekening pelanggan. Pengenal diambil dari permintaan berikut:

InternasionalisasiAplikasi J2EE klien dan web klien Bank yang didistribusikan dengan aplikasi Duke akan diinternasionalisasi. Semua string yang muncul dalam antarmuka pengguna akan diambil dari bundel resource. Klien administrasi menggunakan resource bundle yang namanya AdminMessages_*.properties. Web klien menggunakan resource bundle, bernama WebMessages_*.properties. Kedua klien ini didistribusikan dengan resource bundel Spanyol dan Inggris. Aplikasi Klien mengambil informasi lokal dari baris perintah. Misalnya, untuk menggunakan resource bundel Spanyol, memanggil aplikasinya seperti ini:runclient -client DukesBankApp.ear -name BankAdmin es

Klien administrasi kelas BankAdmin akan membuat ResourceBundle dengan lokal yang dibuat dari argumen perintah://Constructor public BankAdmin(Locale currentLocale) { //Internationalization setup messages = ResourceBundle.getBundle("AdminMessages", currentLocale);

Web klien Dispatcher mengambil komponen lokal (ditetapkan oleh preference bahasa browser) dari permintaan tersebut, membuka berkas resource, dan kemudian menyimpan bundel sebagai atribut sesi:Sistem Terdistribusi Bimo Adi Pradono

www.digizoneku.comResourceBundle messages = (ResourceBundle)session. getAttribute("messages"); if (messages == null) { Locale locale=request.getLocale(); messages = ResourceBundle.getBundle("WebMessages", locale); session.setAttribute("messages", messages); }

Pada web klien, masing-masing halaman JSP pertama mengambil resource dari sesi ini:

look up string yang diperlukan dalam paket. Sebagai contoh, ini adalah cara accountHist.jsp menghasilkan judul untuk tabel transaksi:

Menjalankan Server J2EE, deploytool, dan DatabaseJ2EE Server Menjalankan server J2EE:j2ee -verbose

Deploytool Setelah report server J2EE: startup complete, deploytool dijalankan: 1. Jika deploytool utility tidak berjalan, bisa dimulai dari cmd:deploytool

2. Jika deploytool sudah berjalan, reconnect ke server J2EE: a. Pilih File Add Server b. Di dalam Add Server dialog box, masukkan localhost in the Server Name field. c. Klik OK. Cloudscape Start database server Cloudscape:

Sistem Terdistribusi

Bimo Adi Pradono

www.digizoneku.comcloudscape -start

Compiling Enterprise BeansDalam jendela yang berbeda, ke j2eetutorial/bank subdirektori (masuk ke direktori file yang bersangkutan) dan ketik perintah:ant compile-ejb

Packaging the Enterprise BeansUntuk memaketkan enterprise beans, ketik:ant package-ejb

File kelas dan deskripsi penyebaran paket perintah ke dalam file-file berikut: EJB JAR, ada di j2eetutorial/bank/jar subdirektori.account-ejb.jar customer-ejb.jar tx-ejb.jar ant dapat melaporkan bahwa dia tidak dapat menemukan file (seperti account-ejb.jar ) untuk

melakukan delete. Pesan tersebut bisa diabaikan.

Compile Web klienUntuk mengcompile web klien, ke j2eetutorial/bank direktori dan jalankan perintah:ant compile-web

Packaging the Web ClientSebelum membuat paket web klien, harus menginstal versi 1.0 dari Strutshttp://jakarta.apache.org/builds/jakarta-struts/release/v1.0/

Salin struts-logic.tld dan struts.jar dari jakarta-struts-1.0/lib ke j2eetutorial/bank/jar . Kemudian pindah ke j2eetutorial/bank direktori dan ketik:ant package-web

Compile Aplikasi Klien J2EESistem Terdistribusi Bimo Adi Pradono

www.digizoneku.com

Untuk mengcompile aplikasi client, masuk ke j2eetutorial/bank subdirektori dan jalankan perintah:ant compile-ac

Packaging the J2EE Application Client1. Masuk ke j2eetutorial/bank direktori dan jalankan:ant package-ac

Perintah ini akan membuat file app-client.jar di dalam j2eetutorial/bank/jar direktori. 2. Dari direktori yang sama, ketik berikut:ant setruntime-ac

Perintah ini akan menambahkan runtime deployment descriptor (j2eetutorial/bank/dd/runtime-ac.xml ) ke app-client.jar .

Packaging the Enterprise Archive File1. Untuk membuat berkas arsip Duke's Bank, masuk ke j2eetutorial/bank direktori dan jalankan perintah:ant assemble-app

Perintah ini akan membuat file DukesBankApp.ear di dalam j2eetutorial/bank/jar direktori. 2. Dari direktori yang sama, ketik berikut:ant setruntime-app

Perintah ini menambahkan runtime deployment descriptor (j2eetutorial/bank/dd/runtime-app.xml) ke DukesBankApp.ear.

Membuka File Arsip EnterpriseDalam deploytool, buka EAR dengan cara sebagai berikut: 1. Pilih File Open. 2. Masuk ke j2eetutorial/bank/jar subdirektori. 3. Pilih DukesBankApp.earSistem Terdistribusi Bimo Adi Pradono

www.digizoneku.com

4. Klik Open Object

Gambar 2-3 Arsip Aplikasi dan Komponen

Meninjau JNDI NamePilih DukesBankApp, klik tab JNDI Name. Kolom JNDI Name ditunjukkan dalam Gambar 2-4.

Sistem Terdistribusi

Bimo Adi Pradono

www.digizoneku.com

Gambar 2-4 JNDI Nama JNDI name adalah nama server J2EE yang digunakan untuk mencari enterprise beans dan resource. Lookup sebenarnya berlangsung di baris kode ketiga, di mana getCustomerControllerHome, metode dari com.sun.ebank.utilEJBGetter dipanggil. EJBGetter adalah kelas utility yang mengambil kode JNDI Name dari com.sun.ebank.util.CodedNames . Dalam contoh ini, aplikasi client mencari nama kode untuk me-remote interface CustomerController:try { customerControllerHome = EJBGetter.getCustomerControllerHome(); customer = customerControllerHome.create(); } catch (Exception NamingException) { NamingException.printStackTrace(); } public static CustomerHome getCustomerHome() throws NamingException { InitialContext initial = new InitialContext(); Object objref = initial.lookup(

Sistem Terdistribusi

Bimo Adi Pradono

www.digizoneku.comCodedNames.CUSTOMER_EJBHOME);

Pemetaan Peran Keamanan ke GrupUntuk memetakan peran BankAdmin ke grup Admin dan grup Customer: 1. Dalam deploytool, pilih DukesBankApp 2. Pada tab Security, pilih peran BankAdmin dari daftar Nama Peran (Role Name list). 3. Click Add. 4. Dalam User Groups dialog box, pilih grup Admin dalam daftar Nama Grup. 5. Click OK. 6. Pada tab Security, pilih peran BankCustomer dari daftar Nama Peran. 7. Click Add. 8. Dalam User Groups dialog box, pilih grup Customer dalam daftar Nama Grup. 9. Click OK. 10. Dari menu utama, pilih File Save.

Gambar 2-5 menunjukkan BankCustomer peran yang dipilih dan Customer kelompok yang dipetakan.

Sistem Terdistribusi

Bimo Adi Pradono

www.digizoneku.com

Gambar 2-5 Peran BankCustomer dipetakan ke Grup Customer

Deploying the Duke's Bank ApplicationUntuk menyebarkan/deploy aplikasi: 1. Pilih aplikasi DukesBankApp. 2. Pilih Tools Deploy.

3. Pilih kotak centang yang berlabel Return Client Jar. Secara default, direktori untuk file JAR dikembalikan di tempat yang sama dengan file EAR disimpan. Nama default dari file JAR klien adalah nama aplikasi yang ditambah dengan Client.jar. Dalam hal ini DukesBankAppClient.jar . 4. Klik Finish.

Membuat Database BankUntuk membuat dan mengisi tabel database, masuk ke j2eetutorial/bank direktori pada jendela terminal dan ketik perintah:ant db-create-table ant db-insert

Menjalankan Aplikasi Klien J2EESistem Terdistribusi Bimo Adi Pradono

www.digizoneku.com

Untuk menjalankan aplikasi klien J2EE: 1. Dalam jendela terminal, buka j2eetutorial/bank/jar 2. Set variable APPCPATH environment ke DukesBankAppClient.jar 3. Untuk menjalankan versi bahasa Inggris dari klien, jalankan perintah berikut:runclient -client DukesBankApp.ear -name BankAdmin

4. Untuk menjalankan versi Spanyol, termasuk es kode bahasa:runclient -client DukesBankApp.ear -name BankAdmin es DukesBankApp.ear parameter adalah nama dari file EAR aplikasi J2EE, dan BankAdmin

parameter adalah nama tampilan aplikasi klien. 5. Pada login prompt, ketik admin untuk nama pengguna dan j2ee untuk memasukkan password. Hal berikutnya yang harus dilihat adalah aplikasi yang ditunjukkan dalam Gambar 2-6.

Gambar 2-6 BankAdmin J2EE Aplikasi Klien

Menjalankan Web KlienUntuk menjalankan web klien: 1. Buka URL bank, http://< host >:8000/bank/main , dalam Web browser. Jika server J2EE berjalan pada host yang sama seperti Web browser, ganti dengan localhost . Untuk melihat versi Spanyol aplikasi, set preference bahasa di browser.

Sistem Terdistribusi

Bimo Adi Pradono

www.digizoneku.com

2. Aplikasi ini akan menampilkan halaman login. Masukkan 200 untuk ID pelanggan dan j2ee untuk memasukkan password. Klik Submit. 3. Pilih fungsi aplikasi: Daftar Rekening, Transfer Dana, ATM, atau Logoff. Once you have a list of accounts, you can get an account history by selecting an account link. Setelah memiliki daftar account, maka bisa mendapatkan account history dengan memilih link account. Jika memilih Daftar Rekening, akan terlihat layar yang ditunjukkan pada Gambar 2-7.

Gambar 2-7 Daftar Account

Sistem Terdistribusi

Bimo Adi Pradono