Program:-

Index.html:-

<!DOCTYPE html>

<html>

    <head>

        <title>Login</title>

        <meta charset="UTF-8">

        <meta name="viewport" content="width=device-width, initial-scale=1.0">

    </head>

    <body>

        <form method="post" action="login">

            Username: <input type="text" name="username"><br><br>

            Password: <input type="password" name="password"><br><br>

            <input type="submit" value="Login">

        </form>

    </body>

</html>


ErrorPage.html:-

<!DOCTYPE html>

<html>

    <head>

        <title>Error Page</title>

        <meta charset="UTF-8">

        <meta name="viewport" content="width=device-width, initial-scale=1.0">

    </head>

    <body>

        <h2>Authentication Failure</h2>

    </body>

</html>


Web.xml:-

<?xml version="1.0" encoding="UTF-8"?>

<web-app >

    <servlet>

        <servlet-name>LoginServlet</servlet-name>

        <servlet-class>LoginClass</servlet-class>

    </servlet>

    <servlet-mapping>

        <servlet-name>LoginServlet</servlet-name>

        <url-pattern>/login</url-pattern>

    </servlet-mapping>

    <servlet>

        <servlet-name>UserProfileServlet</servlet-name>

        <servlet-class>UserProfile</servlet-class>

    </servlet>

    <servlet-mapping>

        <servlet-name>UserProfileServlet</servlet-name>

        <url-pattern>/WelcomeUser</url-pattern>

    </servlet-mapping>

    <session-config>

        <session-timeout>

            30

        </session-timeout>

    </session-config>

</web-app>


LoginClass.java:-

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class LoginClass extends HttpServlet{

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException{

        response.setContentType("text/html;charset=UTF-8");

        PrintWriter out = response.getWriter();

        

        try{

            String username = request.getParameter("username");

            String password = request.getParameter("password");

            

            if(username.equals("hanu")&& password.equals("hanu123456"))

            {

                RequestDispatcher rd = request.getRequestDispatcher("/WelcomeUser");

                rd.forward(request,response);

            }

            else

            {

                RequestDispatcher rd = request.getRequestDispatcher("/errorpage.html");

                rd.forward(request,response);

            }

        }

        finally

        {

            out.close();

        }

    }

}


UserProfile.java:-

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class UserProfile extends HttpServlet{

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException{

        response.setContentType("text/html;charset=UTF-8");

        PrintWriter out = response.getWriter();

        

        try{

            String username = request.getParameter("username");

            String password = request.getParameter("password");

            

            out.println("Username > "+username);

            out.println("<br>");

            out.println("Password > "+password);

        }

        finally{

            out.close();

        }

    }

}