3.8 LivroVisitasIncluirDemoServlet.java

package br.aiec.controlador;

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

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

import br.aiec.negocio.ModeloPessoa;
import br.aiec.negocio.Pessoa;
import br.aiec.persistencia.TipoBD;

@WebServlet(name = "LivroVisitasIncluir", urlPatterns = "/livroVisitasIncluir.do")
public class LivroVisitasIncluirDemoServlet extends HttpServlet {

    @Override
    protected void doPost(HttpServletRequest request,
            HttpServletResponse response) throws ServletException, IOException {

        try {
            // Recuperando o bean criado na JSP
            Pessoa pessoaBean = (Pessoa) request.getAttribute("pessoaBean");

            // Criando o objeto responsávevl por estabelecer a conexão com o
            // Modelo (Regras de Negócio)
            TipoBD tipoBD = TipoBD.valueOf(request.getParameter("tipoBD"));
            ModeloPessoa modelo = new ModeloPessoa(tipoBD);

            // Acessando o modelo de dados para os objetos do tipo Pessoa
            modelo.inserir(pessoaBean);

            // Consultando todos as pessoas existentes no modelo
            List<Pessoa> historicoVisitantes = modelo.consultarTodasPessoas();

            // Compartilhando a lista de histórico no contexto da aplicação
            getServletContext().setAttribute("historyVisits",
                    historicoVisitantes);

            // Redirecionando para uma JSP exibir o histórico de visitantes
            RequestDispatcher dispatcher = request
                    .getRequestDispatcher("ExibirHistorico.jsp");
            dispatcher.forward(request, response);

        } catch (Exception e) {
            // Redirecionando para uma JSP de exceção
            RequestDispatcher dispatcher = request
                    .getRequestDispatcher("Excecoes.jsp");
            
            //Atribuindo o objeto de exceção como um atributo da requisição
            request.setAttribute("excecao", e);
            
            //redirecionamento interno
            dispatcher.forward(request, response);
        }
    }
}
Copyright © 2014 AIEC.