3
respostas

Conteudo não esta aparecendo na pagina lista empresas

package br.com.alura.gerenciador.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


@WebServlet("/listaEmpresas")
public class ListaEmpresaServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;


    public ListaEmpresaServlet() {
        super();


    }


    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
            throws ServletException, IOException {

        Banco banco = new Banco();
        List<Empresa> lista = banco.getEmpresas();
        PrintWriter out = response.getWriter();

        out.println("<html><body>");
        out.println("<ul>");

        for (Empresa empresa : lista) {

            out.println("<li>" + empresa.getNome() + "</li>");

        }

        out.println("<ul>");
        out.println("</html></body>");

    }

}

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>

<%@ page import= "java.util.List, br.com.alura.gerenciador.servlet.Empresa" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Java Standart Taglib</title>
</head>


<body>
        Lista de empresas: <br />

    <ul>


        <c:forEach items="${empresas}" var="empresa">

            <li>${empresa.nome} - <fmt:formatDate value="${empresa.dataAbertura }" pattern="dd/MM/yyyy"/></li>

        </c:forEach>

    </ul>


<ul>
</body>
</html>

não aparece as datas de criação das empresas

3 respostas

Olá, Matheus.

Você precisa retirar o HTML que estava escrevendo diretamente no Servlet e fazer um forward para o arquivo JSP que criou. Além disso, verifique se está tudo certo com a criação e armazenamento do campo de data de Empresa no Banco. Se o problema persistir, coloque mais detalhes aqui para que possamos ajudá-lo!

Um abraço

teria como me dar um exemplo para eu entender por favor

Seguindo aí os arquivos do seu caso específico, o seu servlet, agora que você possui um arquivo JSP para gerar o HTML para o usuário, não vai mais se ocupar de escrever esse HTML de forma manual na página. Logo, vamos substituir esse código para poder dar prosseguimento a essa requisição lá com o nosso arquivo JSP. Seu servlet então ficará assim:

@WebServlet("/listaEmpresas")
public class ListaEmpresaServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;


    public ListaEmpresaServlet() {
        super();
    }


    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
            throws ServletException, IOException {

        Banco banco = new Banco();
        List<Empresa> lista = banco.getEmpresas();

    request.setAttribute("empresas", empresas);

    RequestDispatcher rd = request.getRequestDispatcher("nome-do-seu-arquivo-jsp"));
        rd.forward(request, response);


    }

}

Era essa a sua dúvida?

Espero ter ajudado! Se não tiver resolvido, coloca aqui o que está acontecendo detalhadamente.

Um abraço!