Das Servlet gibt auch mit der doPost-Methode den HTTP-Status 405 zurückJava

Java-Forum
Anonymous
 Das Servlet gibt auch mit der doPost-Methode den HTTP-Status 405 zurück

Post by Anonymous »

Ich habe eine CRUD-Anwendung in JakartaEE codiert, aber ich kann die Testseite nach der Anmeldung nicht starten und jede Anfrage gibt nur Folgendes zurück: HTTP 405. Ich habe versucht, meinen Lehrer und IA zu fragen, niemand kann mir helfen.
Konsole

Code: Select all

=================================================
[WARN] Application startup - Initializing services
=================================================
I dont show this ;)
=================================================
[2025-10-01 11:10:32,944] Artifact HivemindWeb:war: Artifact is deployed successfully
[2025-10-01 11:10:32,944] Artifact HivemindWeb:war: Deploy took 2,192 milliseconds
[WARN] Open LoginServelet
[WARN] Meth Use In Servelet: POST
[WARN] Join In Login
[DEBUG] Conectado com sucesso!
Login Sussefy
LoginServelets.java:

Code: Select all

package hivemind.hivemindweb.Servelts;

import java.io.IOException;
import hivemind.hivemindweb.AuthService.AuthService;
import hivemind.hivemindweb.models.Admin;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

@WebServlet("/login")
public class LoginServlet extends HttpServlet{
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
try{
System.out.println("[WARN] Open LoginServelet");
System.out.println("[WARN] Meth Use In Servelet: " + req.getMethod());

String email = req.getParameter("email");
String password = req.getParameter("password");

if(email == null || email.isEmpty() || password == null || password.isEmpty()){
resp.sendError(HttpServletResponse.SC_BAD_REQUEST, "Email ou senha inválidos ou nulos.");
System.out.println("[ERROR] Invalid User");
return;
}

Admin adminClient = new Admin(email, password);
if(AuthService.login(adminClient)){
req.getRequestDispatcher("home").forward(req,resp);
System.out.println("Login Sussefy");
}
else{
System.out.println("[WARN] AdminLocal: email: "+ adminClient.getEmail() + "password: " + adminClient.getHashPassword());
resp.sendError(HttpServletResponse.SC_UNAUTHORIZED, "Email ou senha incorretos.");
}

}catch(ServletException se){
System.out.println("[ERROR] Error In Login, Error: "+ se.getMessage());
resp.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, "[ERROR] Ocorreu um erro interno no servidor. " + req.getMethod() + "Erro: " + se.getMessage());
}
catch(NullPointerException npe){
System.out.println("[ERROR] Null Pointer Exception: check for redundancy or incorrect memory allocation, Erro: " + npe.getMessage());
}

}
}
HTML-Formulare
  • Ich habe bestätigt, dass die Formularmethode POST ist.
  • Ich habe überprüft, ob die Servlet-Zuordnung korrekt ist (@WebServlet("/login")).
  • Ich habe versucht, den Anforderungsverteiler in einen absoluten Pfad ("/home") zu ändern, aber nichts geändert.
  • Ich habe außerdem überprüft, ob Tomcat ordnungsgemäß ausgeführt wird und das Artefakt bereitgestellt wird.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post