Connessione con il Database

di il
2 risposte

Connessione con il Database

Buonasera ragazzi, scusatemi il disturbo.
ho creato un semplice form di login ma non riesco a farlo funzionare; ho dato un occhiata ad altri siti ed il codice è simile a quello che ho scritto ma dopo aver spinto il bottone di login il programma non funziona dandomi l'errore presente nell'immagine.
questo è il file index.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>

</head>
<body>
<link href="//maxcdn.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css">
<script src="//maxcdn.bootstrapcdn.com/bootstrap/4.1.1/js/bootstrap.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<!------ Include the above in your HEAD tag ---------->

<body>
    <div id="login">
        <h3 class="text-center text-white pt-5">Benvenuto</h3>
        <div class="container">
            <div id="login-row" class="row justify-content-center align-items-center">
                <div id="login-column" class="col-md-6">
                    <div id="login-box" class="col-md-12">
                        <form id="login-form" class="form" action="prova" method="post">
                            <h3 class="text-center text-info">Benvenuto</h3>
                            <div class="form-group">
                                <label for="username" class="text-info">Username:</label><br>
                                <input type="text" name="username" id="username" class="form-control" required autofocus>
                            </div>
                            <div class="form-group">
                                <label for="password" class="text-info">Password:</label><br>
                                <input type="password" name="password" id="password" class="form-control" required>
                            </div>
                            <div class="form-group">
                                <label for="remember-me" class="text-info"><span>Ricordami</span> <span><input id="remember-me" name="remember-me" type="checkbox"></span></label><br>
                                <input type="submit" name="submit" class="btn btn-info btn-md" formaction="prova" value="Entra">
                            </div>
                            <div id="register-link" class="text-right">
                                <a href="Register.jsp" class="text-info">Registrati qui</a>
                            </div>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>


</body>
</html>
questo è il file prova.java
@WebServlet("/prova")
public class prova extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			   throws ServletException, IOException {
			  response.setContentType("text/html");
			  PrintWriter out = response.getWriter();
			  // ServletContext sc = getServletContext();
			  HttpSession session = request.getSession();
			  String user = request.getParameter("username");
			  session.setAttribute("username", user);
			  // String email1=sc.getInitParameter("email");
			  // sc.setAttribute("email",email);
			  String password = request.getParameter("password");
			  // HttpSession session=request.getSession();
			  try {
			   Class.forName("com.mysql.jdbc.Driver");
			   Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/sistemi?useSSL=false", "user=root","password=Bertolo123.*");
			   PreparedStatement pst = conn
			     .prepareStatement("Select utente,password from utente where username=? and password=?");
			   pst.setString(1, user);
			   pst.setString(2, password);
			   ResultSet rs = pst.executeQuery("select * from utente where username='"+user+"' and password='"+password+"'");
			   if (rs.next()) {
			    request.getRequestDispatcher("enter.jsp").include(request, response);
			   } else {
			    out.println("Username or Password incorrect");
			    			   }
			   conn.close();
			  } catch (Exception e) {
				  System.out.println(e.getMessage());
			   e.printStackTrace();
			  }
			 }
			}
    	
    	
    	
Allego la foto del mio database a cui dovrebbe collegarsi.
Spero di essere stato chiaro e Vi ringrazio per le risposte.
Allegati:
risultato
risultato

database MYSQL
database MYSQL

2 Risposte

  • Re: Connessione con il Database

    Verifica innanzitutto se hai il file web.xml e, se presente, quale versione dichiara.
    Per poter usare @WebServlet la webapp deve conformarsi alle Servlet spec 3.0 almeno.
  • Re: Connessione con il Database

    Questo è il mio file web.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">
     
    
     
     
     
      <display-name>Sistemi</display-name>
      <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
      </welcome-file-list>
    </web-app>
    Non ho apportato alcuna modifica a questo file.
Devi accedere o registrarti per scrivere nel forum
2 risposte