Я создал форму входа в свой индекс. jsp файл:
<%@ page contentType="text/html; ISO-8859-1" language="java" %>
<html>
<head>
<title>Material Master Data Manager</title>
<meta charset="ISO-8859-1">
<link rel="stylesheet" href="css/login_style.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
</head>
<body>
<div id="basicData">
<div id="createMaterialHeader">
<h2><i><b>Material Master Data Manager</b></i></h2>
<div id="newPasswordBar">
<p><a href="">New Password</a></p>
</div>
</div>
<form class="tabcontent" action="MaterialCreator" method="post">
<label for="client">Client</label><br>
<select type="text" name="client" id="client">
<option>Commerzbank AG S.A. Branch in Lodz</option>
<option>Daikin Airconditioning Poland Sp. z o.o.</option>
<option>Infosys Consulting</option>
</select><br>
<label for="userID">User ID</label><br>
<input type="text" id="userID" name="userID"><br>
<label for="userPassword">Password</label><br>
<input type="password" id="userPassword" name="userPassword"><br>
<label for="isAdmin">Admin</label><br>
<input type="text" id="isAdmin" name="isAdmin"><br>
<input type="submit" class="fa fa-check">
</form>
</div>
</div>
<footer>
<p><a>© Created by Lorem Ipsum. 2017</a></p>
</footer>
</body>
<script src='javaScript/loginJs.js'></script>
</html>
То есть сервлет MaterialCreator:
package com.mmdmanager;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.*;
@WebServlet("/MaterialCreator")
public class MaterialCreator extends HttpServlet {
Connection dbConnection;
PreparedStatement getCredentialsFromDb;
ResultSet userCredentialsReceived;
String userCredentials = "SELECT USER_ID, FIRST_NAME, LAST_NAME, SEX, COMPANY_NAME, IS_ADMIN, ACC_PASSWORD FROM USERS " +
"WHERE COMPANY_NAME =? AND USER_ID =? AND ACC_PASSWORD =? AND IS_ADMIN =?";
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//response.getWriter().append("Served at: ").append(request.getContextPath());
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
PrintWriter printWriter = response.getWriter();
doGet(request,response);
String company_name = request.getParameter("client");
String user_id = request.getParameter("userID");
String acc_password = request.getParameter("userPassword");
String is_admin = request.getParameter("isAdmin");
if (company_name.equals("Infosys Consulting") && user_id.equals("ADMIN1") && acc_password.equals("Q@3wertyuiop") && is_admin.equals("Y")) {
response.sendRedirect("MaterialCreator.jsp");
}
else {
response.sendRedirect("");
}
}
}
Как видно из кода выше, Основная идея состоит в том, чтобы перенаправить при условии, что пользователь предоставляет правильные учетные данные (оператор IF хранит их). К сожалению, независимо от того, какие учетные данные я предоставляю, каждый раз, когда я нажимаю кнопку ввода (класс "fa fa-check"), я перенаправляюсь в сервлет MaterialCreator, а не в файл MaterialCreator. jsp, однако код содержит метод -> response.sendRedirect ("MaterialCreator. jsp"); , но он невидим для проекта.
MaterialCreator. jsp файл имеет очень простой html код:
<%@ page contentType="text/html; ISO-8859-1" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<h1>Hello User!</h1>
</body>
</html>