[Logo] Mentawai Forum - Mentawai Web Framework
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
Tratamento de Exceção  XML
Forum Index -> Comentários Gerais
Author Message
oliveirajunior


[Avatar]

Joined: 21/07/2007 13:05:38
Messages: 23
Offline

Tenho uma página que envia um e-mail, porém fiz um teste onde o servidor smtp está com valores que não existe e consequentemente isso vai gerar uma exceção.
Criei já na ApplicationManager um filtro Global (ExceptionFilter) conforme ilustrado em vários exemplos aqui no fórum.
Porém ao lançar uma exceção não consigo recuperar em uma página personalizada os erros gerados pela exceção. Já olhei no debug da página e não possui nada no Output.

Code:
 //AplicationManager
 
 public void loadActions() {
 		setDebugMode(true, true);
 
 		// Filtros Globais
 		addGlobalFilter(new ExceptionFilter());
 		addGlobalFilter(new FileUploadFilter());
 		addGlobalFilter(new ValidatorFilter());
 		addGlobalFilter(new ConnectionFilter(connHandler));
 		addGlobalFilter(new AuthenticationFilter());
 		addGlobalConsequence(AuthenticationFilter.LOGIN, new redirect(PATH_SYSTEM + "index.jsp"));
 		addGlobalConsequence(AuthorizationFilter.ACCESSDENIED, new Redirect(PATH_ERROR + "denied.jsp"));
 		addGlobalConsequence(ExceptionFilter.EXCEPTION, new Forward(PATH_ERROR + "exception.jsp"));
 
 


Code:
 //Action
 
 public String enviar() {
 		try {
 						
 			//Configurando os parâmetros do e-mail
 			Properties params = new Properties();
 			
 			params.load(ApplicationManager.getInstance().getClass().getResourceAsStream("email.properties"));
 			
 			String smtpServer = params.getProperty("smtp_server");
 			String email = params.getProperty("email");
 			int port = Integer.parseInt(params.getProperty("port"));
 			String senha = params.getProperty("senha");
 			Boolean sslConnection = Boolean.parseBoolean(params.getProperty("ssl_connection"));
 			//-----------------------------------------------
 			
 			//Configurando o e-mail
 			Email.setSSLConnection(sslConnection);
 			Email.setDefaultPort(port);
 			Email.setDefaultHostName(smtpServer);
 			Email.setDefaultAuthentication(email, senha);
 			Email.setDefaultFrom(email, "Site Coopema");
 			
 			//Enviando o e-mail
 			SimpleEmail simpleEmail = new SimpleEmail();
 			simpleEmail.addTo(input.getStringValue("emailSetor"));
 			simpleEmail.setSubject("E-mail enviado do site");
 			
 			StringBuffer msg = new StringBuffer();
 			msg.append("E-mail enviado do site da coopema").append(" \n \n");
 			msg.append("Nome: ").append(input.getStringValue("nome")).append(" \n");
 			msg.append("E-mail: ").append(input.getStringValue("email")).append(" \n");
 			msg.append("Telefone: ").append(input.getStringValue("telefone")).append(" \n");
 			msg.append("Mensagem: ").append(input.getStringValue("mensagem")).append(" \n \n");
 						
 			simpleEmail.setMsg(msg.toString());
 			simpleEmail.send();
 			
 			addMessage("E-mail enviado com sucesso");
 			
 			input.removeValue("nome");
 			input.removeValue("email");
 			input.removeValue("telefone");
 			input.removeValue("emailSetor");
 			input.removeValue("mensagem");
 			
 			return SUCCESS;
 		} catch (Exception e) {
 			e.printStackTrace();
 			return ExceptionFilter.EXCEPTION;
 		}
 	}
 


Code:
 //Página que trata os erros
 
 <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
     pageEncoding="ISO-8859-1"%>
 <%@ taglib prefix="mtw" uri="mentawai" %>
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>Colégio São Lucas</title>
 </head>
 <body>
 Infelizmente o sistema se comportou de maneira inesperada.
 Informe o problema ao Analista Responsável.
 <br>
 <mtw:out value="message" />
 <br> 
 <mtw:out value="stacktrace" />
 <br> 
 <mtw:out value="stackheader" />
 </body>
 </html>
 
 


Será que está faltando alguma coisa?

Abraços a todos.
[MSN]
RubemAzenha


[Avatar]
Joined: 30/06/2005 23:12:02
Messages: 472
Location: São Paulo, SP
Offline

Remove o catch, deixe o filtro capturar a exceção.


Mentawai Developer
[WWW] [MSN]
Stanley Alves



Joined: 09/08/2007 12:00:42
Messages: 60
Offline

realmente... vc está tratando a excessão na propria action...

faça o que o "RubemAzenha" e comenta ae se deu certo...

flw...
 
Forum Index -> Comentários Gerais
Go to:   
Powered by JForum 2.1.6 © JForum Team