Ads (728x90)

Latest Post

Kesehatan

Tips


Action, mendukung beberapa aksi yang berbeda-beda. Hampir mirip dengan scripting, action akan dieksekusi setiap kali ada permintaan. Fungsi penting dari action adalah: memungkinkan terjadinya transfer kontrol antar halaman, mendukung penggunaan applet java, dan memungkinkan jsp terintegrasi dengan komponen javabeans.

Jsp mengenal tag action standar dan custom tag. Tag standar adalah tag yang didefinisikan dalam spesifikasi jsp. Sedangkan custom tag adalah tag baru yang dapat didefinisikan sendiri. Pada halaman ini, hanya diulas mengenai tag action standar. Adapun tag action standar jsp adalah sebagai berikut:
  • <jsp:useBean>
  • <jsp:setProperty>
  • <jsp:getProperty>
  • <jsp:param>
  • <jsp:include>
  • <jsp:forward>
  • <jsp:plugin>
Kita akan berlatih memahami dalam penggunaan action standard forward dan param. Forward action, digunakan untuk mentransfer kontrol dari sebuah halaman jsp ke halaman lain pada server lokal. Saat proses berlangsung, baris-baris kode sesudah forward action pada jsp asal, tidak akan diproses lagi oleh jsp container. Proses berpindah pada halaman tujuan, cara penulisannya adalah dengan menggunakan tag:

<jsp:forward page="localurl" />.

Forward action biasanya digunakan bersama-sama dengan Param action. Atau perhatikan contoh berikut:

Contoh penggunaan forward action untuk operasi login.
Buat tiga file masing-masing bernama: login.html, testlogin.jsp, dan validlogin.jsp.
Isi dari masing-masing file adalah sebagai berikut.

File login.html
<html>
<head>
<title>Login </title>
</head>
<body>
<form action="testlogin.jsp" method="post">
Silakan masukkan nama dan password anda : <br>
Nama :<input type="text" name="nama"> <br>
Password :<input type="text" name="pass"> <br>
<input type="submit" value="login">
</form>
</body>
</html>

File testlogin.jsp
<html>
<head>
<title>Test Login </title>
</head>
<body>
<%
String nama = request.getParameter("nama");
String pass = request.getParameter("pass");
if ((nama.equals("aunurrm")) &&
(pass.equals("arm"))) {
%>
<jsp:forward page='validlogin.jsp' >
<jsp:param name='id' value='<%= nama %>' />
</jsp:forward>
<% }
else {
%>
<jsp:forward page='login.html' />
<% }
%>
</body>
</html>

File validlogin.jsp
<html>
<head>
<title>Login ok</title>
</head>
<body>
<h3>
Selamat <%=request.getParameter("id") %> <br>
Anda berhasil login<br>
</h3>
</body>
</html>

Jalankan halaman login.html, maka kita akan mendapatkan tampilan seperti pada gambar 14.20. Isikan sembarang nama dan password kemudian tekan tombol login. Kita tidak akan mendapatkan hasil apa-apa. Nama dan password anda akan hilang. Demikian walau berulang-ulang. Sekarang masukkan pada nama 'aunurrm' dan passwordnya 'arm' (tanpa tanda petik). Tekan tombol login, maka kita akan mendapatkan hasil seperti pada gambar 14.21.



Pada contoh di atas, file login.html merupakan file untuk menerima input nama dan password. Pada file ini kita menggunakan fitur form pada html. Formulir dibentuk dengan menggunakan pasangan tag <form> dan </form>. Dua atribut utama dari form yang sering digunakan adalah 'action dan method'. Action menentukan alamat yang akan dijalankan, dan menerima semua masukan pada form. Jika action tidak disebutkan, informasi akan dikirim ke alamat yang sama dengan halaman form itu sendiri.

Method digunakan untuk menentukan bagaimana informasi dikirim ke alamat yang disebutkan dalam action. Nilai yang umum digunakan adalah 'get dan post'. Post membuat informasi akan dikirim secara terpisah dengan alamat, sedangkan get akan membuat informasi dikirim menjadi satu dengan alamat yang dituju.

Contoh di atas menggunakan action="testlogin.jsp" dan metode penyampaiannya adalah post. Artinya, data pada form akan dikirim ke file dengan nama testlogin.jsp yang berada di satu direktori dengan file login.html.
File kedua yang testlogin.jsp adalah file yang digunakan untuk menangkap input kemudian memeriksa apakah input tersebut valid atau tidak. Perintah request.getParameter digunakan untuk menerima input sesuai dengan variabel input yang ditetapkan. Sebagai contoh, request.getParameter('nama') berarti akan menangkap isi dari variabel nama dari file login.html. Isi dari nama dan pass ini kemudian di masukkan pada variabel string dengan nama yang sama. Kemudian, dicocokkan apakah nama = 'aunurrm' dan pass='arm'?. Jika benar maka action forward dilakukan yaitu membawa isi yang didefinisikan di action param, yaitu variabel 'id' ke file loginvalid.jsp. Jika tidak, maka action forward juga dilakukan tetapi kembali ke file login.html.
File ketiga hanya dipanggil jika syarat nama dan pass dipenuhi. File ini juga menggunakan request.getParameter untuk menangkap variabel 'id'.

Halaman Terkait:
| Dasar-dasar jsp | Directive | Elemen scripting | Komentar |

Post a Comment