zend framework try catch / 404 probleem
Ik wil met behulp van zend framework een site maken. Nu heb ik een try en catch gemaakt en de foutafhandeling wil ik zelf doen met een eigen error class.
So far so good, maar nu het probleem. Ik gebruik ook de ErrorController van ZF. In deze class zit een errorAction() waarmee ik een 404 pagina toon. Hartstikke mooi. Echter, als zich een error voordoet, wordt niet mijn eigen error class getriggerd, maar de errorAction() in de ErrorController. In plaats van dat er een foutmelding wordt getoond, wordt nu de 404 pagina getoond.
Inmiddels ben ik zover dat ik de errorafhandeling van ZF kan uitzetten via $front->throwExceptions(true). Mooi, nu doet m'n eigen Error class het weer, maaaaar... de 404 pagina werkt nu niet meer... grrrr!!!
Wat moet ik doen om m'n eigen error class errors te laten gooien, maar ZF wel 404 pagina's te laten tonen?
Code (php)
1
2
3
4
5
6
2
3
4
5
6
try {
// voer code uit
}
catch (Error $error) {
$error->execute(); // voer de execute functie van mijn eigen error class uit
}
// voer code uit
}
catch (Error $error) {
$error->execute(); // voer de execute functie van mijn eigen error class uit
}
So far so good, maar nu het probleem. Ik gebruik ook de ErrorController van ZF. In deze class zit een errorAction() waarmee ik een 404 pagina toon. Hartstikke mooi. Echter, als zich een error voordoet, wordt niet mijn eigen error class getriggerd, maar de errorAction() in de ErrorController. In plaats van dat er een foutmelding wordt getoond, wordt nu de 404 pagina getoond.
Inmiddels ben ik zover dat ik de errorafhandeling van ZF kan uitzetten via $front->throwExceptions(true). Mooi, nu doet m'n eigen Error class het weer, maaaaar... de 404 pagina werkt nu niet meer... grrrr!!!
Wat moet ik doen om m'n eigen error class errors te laten gooien, maar ZF wel 404 pagina's te laten tonen?
Gewijzigd op 25/11/2010 16:59:15 door Ozzie PHP
Je hebt juist een errorAction zodat je zelf geen class daarvoor hoeft te gebruiken. Je kan in die action en view alles customisen, dus waarom doe je dat niet?
Oftewel, wat heeft jouw foutafhandeling als pluspunt tegenover die van Zend?
Oftewel, wat heeft jouw foutafhandeling als pluspunt tegenover die van Zend?
Ik had die class ooit al eens half gebouwd, dus vandaar eigenlijk. Maar oke, ik wil best jouw tip in overweging nemen en de Zend class gebruiken, maar als ik een error throw dan moet mijn error getoond worden en niet de 404 pagina zoals nu het geval is. Als jij weet hoe dat onderscheid gemaakt moet worden???
Hoe start jij je app op de landingspage? via Zend_Controller_Front class?
Ik gebruik wel zend controller front, maar ik weet niet of je dat bedoelt. Weet jij het antwoord op mijn vraag?
Op je landing page kun je het volgende doen als je dispatch van de front controller gebruikt.
Thanks, maar dit is toch een beetje een kromme manier van foutafvanging? Kijken of een bepaald stukje tekst in een error message zit? Is er niet een betere manier?




