Bom dia!
Tenho uma dúvida antiga a respeito de Try - Catch… já procurei no fórum e não consegui encontrar nada parecido.
Por que em alguns códigos que estão dando erro, se colocarmos o try - catch funciona?
Por exemplo, tenho o seguinte código em uma Servlet:
protected void service(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
Contato c = new Contato();
c.setIdContato(Integer.parseInt(req.getParameter("idContato")));
try {
EmailDAO dao = new EmailDAO();
List<Email> listaEmail = dao.getLista(c.getIdContato());
HttpSession session = req.getSession();
session.setAttribute("listaEmail", listaEmail);
RequestDispatcher rd = req
.getRequestDispatcher("detalhesContato.jsp");
rd.forward(req, res);
} catch (Exception e) {
throw new ServletException(e);
}
}
Neste código eu armazeno uma List em uma Session, e pego o retorno dela na seguinte JSP:
<% List<Email> listaEmail = (List<Email>) session.getAttribute("listaContato");
for (Email e: listaEmail){%>
<%=e.getEmail() %>
<%}%>
Desta forma, tenho o seguinte erro no JSP:
exception
org.apache.jasper.JasperException: An exception occurred processing JSP page /detalhesContato.jsp at line 17
14:
15: <% List listaEmail = ( List ) session.getAttribute(“listaContato”);
16:
17: for (Email e: listaEmail){%>
18: <%=e.getEmail() %>
19: <%}%>
20:
Mas quando eu coloco try - catch… a página roda, porém não consigo listar na tela os e-mails da lista.
Alguém pode me ajudar?!
