No estoy seguro de por qué no capturo excepciones de Swiftmailer en mi controlador. ¿Qué estoy haciendo mal o me falta?Catch swiftmailer excepción en el controlador Symfony2 dev env
En un controlador que tengo:
try {
$this->get('mailer')->send($email);
}
catch (\Swift_TransportException $e) {
$result = array(
false,
'There was a problem sending email: ' . $e->getMessage()
);
}
Parece ser atrapado por Symfony antes de que llegue a mi código, así que en vez de ser capaz de manejar el error yo tengo la página estándar 500 con Swift_TransportException: Connection could not be established
Si no se puede enviar el correo electrónico, no es necesario detener la aplicación, ya que el correo electrónico no es crítico. Solo quiero emitir un aviso.
Tal vez haya una manera de desactivar la captura de Symfonys de ciertas excepciones o para ciertos Controladores?
Creo que puede hacerlo anulando el controlador Twig Exception. Aunque no estoy 100% seguro. Ver mi respuesta a continuación. – codecowboy