0% menganggap dokumen ini bermanfaat (0 suara)
16 tayangan

Java Web - Pertemuan 3

Dokumen ini membahas tentang response redirecting di Java dengan menggunakan RequestDispatcher, termasuk method include(), forward(), dan sendRedirect(). Method-method tersebut digunakan untuk mengalihkan permintaan dan respons antar servlet dan sumber daya lain.

Diunggah oleh

Angga Pramadjaya
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
16 tayangan

Java Web - Pertemuan 3

Dokumen ini membahas tentang response redirecting di Java dengan menggunakan RequestDispatcher, termasuk method include(), forward(), dan sendRedirect(). Method-method tersebut digunakan untuk mengalihkan permintaan dan respons antar servlet dan sumber daya lain.

Diunggah oleh

Angga Pramadjaya
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 13

Pertemuan 3

Response Redirecting
1. Objek RequestDispatcher
Sebuah RequestDispatcher merupakan Class JavaSW sangat penting
yang memungkinkan untuk 'including' konten dalam permintaan /
respon atau 'forwarding' permintaan / respon terhadap sumber daya.
Sebagai contoh yang khas, servletW dapat menggunakan
RequestDispatcher untuk menyertakan atau meneruskan permintaan /
respons terhadap JSPW. Dalam pemrograman Model-View-Controller
di Java, servlet biasanya berfungsi sebagai 'Controller'. Controller
pada dasarnya berisi atau referensi kode untuk melakukan tindakan
tertentu, dan memutuskan yang 'melihat' untuk mengirim pengguna
untuk. Di Java, pandangan biasanya JSP. Dengan demikian,
RequestDispatcher melakukan peran yang sangat penting dalam
arsitektur Java MVCW karena dapat berfungsi sebagai mekanisme
untuk 'pengendali' (servlet) untuk memperbolehkan pengguna untuk
'melihat' (JSP).
Pada contoh ini akan ditunjukan bagaimana RequestDispatcher
digunakan untuk memforward atau menginclude response dari servlet.
Disini kira menggunakan index.html untuk mendapatkan username
dan password dari user, Validate servlet akan memvalidasi password
yang dimasukan oleh user, jika password yang dimasukan oleh user
”mahasiswa” maka dia akan ke Welcome servlet jika tidak idex.html
akan muncul kembali.
Pertama bikin project baru :

17
Pilih Java Web > Web Application lalu pilih Next

Beri nama project responseRedirecting lalu pilih Next

18
Pilih Apache Tomcat sebagai server lalu klik Finish

Ubah kodingan index.jsp menjadi

Tambahkan java package dengan klik kanan pada source package


pilih new lalu klik java package

19
Beri nama pada com.javabeans pada java package

Klik kanan pada com.javabeans lalu pilih new > sevlet

20
Beri nama Validate pada servlet lalu klik next

Pastikan servlet name dan URL pattern(s) sesuai lalu klik Finish

21
Ubah isi dari Validate.java menjadi seperti berikut

22
Klik kanan pada com.javabeans pilih New > Servlet

Beri nama Welcome pada Servlet klik Next

23
Pastikan Servlet Name dan URL Pattern(s) sesuai klik Finish

Ubah isi Welcome.java menjadi seperti berikut

24
Setelah di running maka hasilnya adalah sebagai berikut

Jika password salah akan muncul

Jika password benar akan muncul

25
2. Method Include
Pada inluclude() method hasil request dispatcher yang ditambahkan ke
hasil keluaran sebelumnya dihasilkan oleh servlet Validate. kita
melihat bahwa RequestDispatcher objek 'include' isi index.jsp dalam
hasil dikirim kembali ke browser. Seperti yang Anda lihat pada
Servlet Validate

Kodingan yang berada pada kotak merah akan di eksekusi ketika


password tidak sama dengan budiluhur karena ’include’ maka akan
mencetak tulisan ”You have entered incorrect password” dan
mencetak form yang ada pada index.jsp
Hasilnya :

26
3. Method Forward
Jika pada forward() objek RequestDispatcher 'forward' permintaan /
respon terhadap Welcome.java. Berbeda halnya dengan 'include',
method 'forward' akan membuang output sebelumnya yang Servlet
Validasi telah menulis untuk respon. Akibatnya, kita hanya melihat
output yang dihasilkan oleh Welcome.java.

Kodingan yang berada pada kotak merah akan di eksekusi ketika


password sama dengan budiluhur karena ’forward’ maka tidak akan
memperdulikan Validate.java dan hanya akan mencetak yang ada
pada Welcome.java
Hasilnya :

27
4. Method sendRedirect
The sendRedirect () method adalah HttpServletResponse
interface dapat digunakan untuk mengarahkan respon terhadap
sumber daya lain, mungkin servlet, jsp atau file html. Method
ini menerima relatif serta URL absolut dan juga bekerja pada
sisi client karena menggunakan bar url browser untuk membuat
permintaan lain. Jadi, dapat bekerja dalam dan di luar server.
Perbedaan antara forward() method dan sendRedirect() method
Forward() sendRedirect()
Ketika kita menggunakan Dalam kasus permintaan
forward permintaan metode sendRedirect dapat
adalah transfer ke sumber daya mentransfer ke sumber daya
lain dalam server yang sama lain untuk domain yang
untuk diproses lebih lanjut. berbeda atau server yang
berbeda untuk diproses lebih
lanjut.
Dalam forward Web kontainer Bila Anda menggunakan
menangani semua proses sendRedirect transfer
internal dan client atau kontainer permintaan client
browser tidak terlibat. atau browser, sehingga url
yang diberikan dalam method
sendRedirect terlihat sebagai
permintaan baru client.
Ketika forward dipanggil pada Dalam kasus sendRedirect
requestDispather object maka permintaan lama dan object
kita akan melewati permintaan respon hilang karena itu
dan object respon sehingga diperlakukan sebagai
object permintaan lama kita permintaan baru oleh browser.
hadir pada sumber daya baru

28
yang akan memproses
permintaan kita.

Secara visual kita tidak dapat Di address bar kita dapat


melihat alamat yang di melihat alamat baru yang di
forwarded, karena bersifat redirected karena itu tidak
transparent. bersifat transparent.
Menggunakan forward () SendRedirect lebih lambat
metode lebih cepat dari kerena akan meload url
mengirim redirect. tujuan dari awal karena
permintaan benar-benar baru
dan objek pada permintaan
lama hilang.
Ketika kita redirect Namun dalam sendRedirect
menggunakan forward dan kita jika kita ingin menggunakan
ingin menggunakan data yang kita harus menyimpan data
sama dalam sumber daya baru dalam session atau
kita dapat menggunakan melewatkannya bersama
request.setAttribute() maka dengan URL.
request object akan tersedia.
Syntax untuk forward: Syntax untuk sendRedirect:
Forward(request,response) sendRedirect(String URL)

29

Anda mungkin juga menyukai