Quando estou no navegador e digito http://localhost:8080/gerenciador/formNovaEmpresa.html ele mostra apenas o campo para colocar o nome da empresa e não mostra o da data de abertura. Eu coloco o nome da empresa e clico em enviar, em seguida ele mostra esse erro:
HTTP Status 500 – Internal Server Error Type Exception Report
Description The server encountered an unexpected condition that prevented it from fulfilling the request.
Exception
java.lang.NullPointerException java.text.SimpleDateFormat.parse(SimpleDateFormat.java:1439) java.text.DateFormat.parse(DateFormat.java:364) br.com.alura.gerenciador.servlet.NovaEmpresaServlet.doPost(NovaEmpresaServlet.java:32) javax.servlet.http.HttpServlet.service(HttpServlet.java:652) javax.servlet.http.HttpServlet.service(HttpServlet.java:733) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) Note A pilha de erros completa da causa principal está disponível nos logs do servidor.
Apache Tomcat/9.0.44
Aqui está meu código em NovaEmpresaServlet.java
package br.com.alura.gerenciador.servlet;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class NovaEmpresaServlet
*/
@WebServlet("/novaEmpresa")
public class NovaEmpresaServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
System.out.println("Cadastrando nova empresa");
String nomeEmpresa = request.getParameter("nome");
String paramDataEmpresa = request.getParameter("data");
Date dataAbertura = null;
try {
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
dataAbertura = sdf.parse(paramDataEmpresa);
} catch (ParseException e) {
throw new ServletException(e);
}
Empresa empresa = new Empresa();
empresa.setNome(nomeEmpresa);
empresa.setDataAbertura(dataAbertura);
Banco banco = new Banco();
banco.adiciona(empresa);
request.setAttribute("empresa", empresa.getNome());
response.sendRedirect("listaEmpresas");
// //chamar o JSP ou Servlet
// RequestDispatcher rd = request.getRequestDispatcher("/listaEmpresas");
// request.setAttribute("empresa", empresa.getNome());
// rd.forward(request, response);
}
}