Olá, eu fiz o código como descrito, e ele funciona ao captar o input, mas o parâmetro ainda é exibido na barra da URL. Ao inspecionar com o Chrome, tem o seguinte erro:
Error handling response: TypeError: Cannot read property 'isMSE' of null
e ele diz que esse erro ocorre em: formNovaEmpresa.html:1
Mas sinceramente não sei o que tem de errado. Aqui seguem meus códigos do Servlet e do HTML:
package gerenciador.servlet;
import java.io.IOException;
import java.io.PrintWriter;
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("/NovaEmpresa")
public class NovaEmpresaServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
@Override
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("Cadastrando nova empresa!");
String nomeEmpresa = request.getParameter("nome");
PrintWriter out = response.getWriter();
out.println("<html><body>Empresa " + nomeEmpresa + " cadastrada com sucesso!</body></html>");
}
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Insert title here</title>
</head>
<body>
<form action="/gerenciador/NovaEmpresa" method="post">
Nome <input type="text" name="nome" />
<input type="submit" />
</form>
</body>
</html>