2010-01-23 4 views
1

기본 ErrorCongtroller를 사용하여 오류를 처리하고 싶습니다. 프론트 컨트롤러 플러그인으로 등록했는데 아무 것도하지 않습니다. 기존 컨트롤러 및 액션을 잡기 위해 다른 것을 설정해야합니까? 아니면 다른 컨트롤러에 코드를 추가해야합니까? 당신이 $front->throwExceptions(false);을 설정하면 어떻게됩니까Zend Framework 오류 처리

$front = Zend_Controller_Front::getInstance(); 
$front->registerPlugin(new Zend_Controller_Plugin_ErrorHandler()); 
$front->returnResponse(true); 
$front->throwExceptions(true); 

답변

0

: 여기에 등록을위한 코드입니까?

ErrorHandler는 프런트 컨트롤러에 던져서는 안되며 (또는 거품을 내뿜지 말고, 내가 추측하는 것임), ErrorHandler가 예외를 잡는다고 믿습니다.

또한 반환 된 응답으로 무엇을하고 있습니까?

$response = $front->dispatch(); 
$response->sendResponse(); 
+0

이미 허위 사실을 모두 throwException /로 시도 : 전용 "것은"그것을 필요로하는 것은 errorAction

와 기본 모듈에서 ErrorController은 자세한 내용은 설명서를 참조하십시오입니다. 차이점이 없습니다. – Hubidubi

1

사용하고있는 ZF의 어떤 버전 : 당신이 $front->returnResponse(true);을 설정 한 이후, 당신은에 응답 자신과 출력을 수집해야? 내가 최신 버전에서 발견 한 한 오류 처리기는 기본적으로 등록됩니다. http://framework.zend.com/manual/en/zend.controller.plugins.html#zend.controller.plugins.standard.errorhandler

+0

1.9.5를 사용합니다. 오류 컨트롤은 기본적으로 등록되어야하지만 작동하지 않는다는 것을 읽었습니다. 빠른 시작 프로젝트 (http://framework.zend.com/docs/quickstart/create-your-project)에서 오류 컨트롤러를 사용합니다. – Hubidubi