♠ Posted by Unknown in J2EE at 3:03 AM
Latihan dasar JEE #1
Pada J2EE terdapat 2 methos pangalihan resposse:
Request Dispacher
Kali ini saya akan mencoba membuat sebuah form login sederhana. Disini terdapat dua buah inputtan, yaitu:
        
apabila pada baris 'dis.include(request, response);' login.java(servlet) diganti dengan 'dis.forward(request, response);' tulisan login salah tidak akan include ke login.
Send Direct
untuk penggunaan method sendDirect kita tinggal ganti login.java (servlet) jadi seperti :
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String username= request.getParameter("nama");
String password= request.getParameter("pass");
//RequestDispatcher dis=null;
if(username.equalsIgnoreCase("admin")&&password.equals("admin")){
//dis= request.getRequestDispatcher("/admin.jsp");
response.sendRedirect("admin.jsp");
}else if(username.equalsIgnoreCase("user")&&password.equals("user")){
//dis =request.getRequestDispatcher("/user.jsp");
response.sendRedirect("user.jsp");
}else{
out.println("Login Salah");
//dis = request.getRequestDispatcher("/index.jsp");
response.sendRedirect("index.jsp");
}
//dis.forward(request, response);
}
Perbedaan Pengalihan response dengan method Dispacher dan sendDirect adalah terdapat pada tampilan url di Browser......
Pada J2EE terdapat 2 methos pangalihan resposse:
- RequestDispacher
 - Send Direct
 
Request Dispacher
Kali ini saya akan mencoba membuat sebuah form login sederhana. Disini terdapat dua buah inputtan, yaitu:
1. namauser
2. password
apabila user masuk sebagai admin maka akan dialihkan ke admin.jsp, apabia user memasukkan salah maka akan di alihkan kembali ke halaman login
index.jsp
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <h1>login</h1>
        <form action="LoginDispacher" method="POST">
            <fieldset>
                UserName : <input type="text" name="nama" value="" />
            </fieldset>
            <fieldset>
                Password : <input type="password" name="pass" value="" />
            </fieldset>
            <fieldset>
                <input type="submit" value="Login" />
            </fieldset>
        </form>
    </body>
</html>
admin.jsp
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Halaman Admin</title>
    </head>
    <body>
        <h1> Anda Login sebagai "Admin"</h1>
    </body>
</html>
user.jsp
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>User Page</title>
    </head>
    <body>
        <h1>Anda login sebagai "Users"</h1>
    </body>
</html>
Login.java ---> servlet
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        String username= request.getParameter("nama");
        String password= request.getParameter("pass");
        RequestDispatcher dis=null;
        if(username.equalsIgnoreCase("admin")&&password.equals("admin")){
            dis= request.getRequestDispatcher("/admin.jsp");
        }else if(username.equalsIgnoreCase("user")&&password.equals("user")){
            dis =request.getRequestDispatcher("/user.jsp");
        }else{
            out.println("Login Salah");
            dis = request.getRequestDispatcher("/index.jsp");
        }
        dis.include(request, response);
    }
Send Direct
untuk penggunaan method sendDirect kita tinggal ganti login.java (servlet) jadi seperti :
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String username= request.getParameter("nama");
String password= request.getParameter("pass");
//RequestDispatcher dis=null;
if(username.equalsIgnoreCase("admin")&&password.equals("admin")){
//dis= request.getRequestDispatcher("/admin.jsp");
response.sendRedirect("admin.jsp");
}else if(username.equalsIgnoreCase("user")&&password.equals("user")){
//dis =request.getRequestDispatcher("/user.jsp");
response.sendRedirect("user.jsp");
}else{
out.println("Login Salah");
//dis = request.getRequestDispatcher("/index.jsp");
response.sendRedirect("index.jsp");
}
//dis.forward(request, response);
}
Perbedaan Pengalihan response dengan method Dispacher dan sendDirect adalah terdapat pada tampilan url di Browser......




0 komentar:
Post a Comment