2013-03-12 4 views
0

У меня проблема с исключением в моем контроллере Symfony2 ... Я пытаюсь поймать NotFoundHttpException, но блок catch ... просто не происходит, это идет в стандартной странице исключения Symfony2 с трассировки стека, а не в среде разработки ...Symfony2 - Не работает блок catch в контроллере

у меня есть следующий код:

<?php 

namespace SeerUK\DWright\GalleryBundle\Controller; 

use Symfony\Bundle\FrameworkBundle\Controller\Controller; 
use Symfony\Component\HttpFoundation\Response; 

use SeerUK\DWright\GalleryBundle\Entity\Gallery; 


class GalleryController extends Controller 
{ 
    public function indexAction($galleryId) 
    { 
     try 
     { 
      $gallery = $this->getDoctrine() 
       ->getRepository('SeerUKDWrightGalleryBundle:Gallery') 
       ->find($galleryId); 

      throw $this->createNotFoundException('rawr'); // Just for the sake of testing... 

      if (!$gallery) { 
       throw $this->createNotFoundException(
        'No gallery found for id ' . $galleryId 
       ); 
      } 

      $galleryId   = $gallery->getId(); 
      $galleryName  = $gallery->getName(); 
      $galleryDesc  = $gallery->getDesc(); 
      $galleryPublishedOn = $gallery->getPublishedOn(); 

      return $this->render('SeerUKDWrightGalleryBundle:Gallery:index.html.twig', array(
       'galleryId'   => $galleryId, 
       'galleryName'  => $galleryName, 
       'galleryDesc'  => $galleryDesc, 
       'galleryPublishedOn' => $galleryPublishedOn->format('Y-m-d H:i:s'), 
      )); 
     } 
     catch (Symfony\Component\HttpKernel\Exception\NotFoundHttpException $e) 
     { 
      echo $e->message; 
     } 
    } 
} 

ответ

1

Вы должны попробовать catch (\Symfony\Component\HttpKernel\Exception\NotFoundHttpException $e) или просто использовать этот NotFoundHttpException ...

Возможно, он хочет поймать SeerUK\DWright\GalleryBundle\Controller\Symfony\Component\HttpKernel\Exception\NotFoundHttpException в вашем случае :)

+0

Вы, сэр, были правы! Ему просто нужно было '' 'перед именем исключения Symfony2 :) – Seer

Смежные вопросы