I am new to Symfony(using version 2.2) and trying to add a custom exception listener. I have read the following links but cannot get it to work.
What I'm trying to do is to create a custom Error Exception Listener and use it from my controllers and services like this,
throw new jsonErrorException('invalid_params');
to display json twig template like this.(I'm developing a background program for my native smartphone applications)
{"status": "error", "message": "invalid_params"}
I have registered my CustomEventListener to my src/My/Bundle/Resources/config/services.yml and created a custom exception class as shown on following link(Overriding Symfony 2 exceptions?) but I get the error
symfony exceptions must be valid objects derived from the exception base class
Am I doing something wrong here? Thanks.
I recently implemented a custom exception in my Symfony2 service in the following manner:
MemberAlreadyExistsException.php
<?php
namespace Aalaap\MyAppBundle\Services\Membership;
class MemberAlreadyExistsException extends \Exception
{
}
Subscriber.php
<?php
namespace Aalaap\MyAppBundle\Services\Membership;
...
throw new MemberAlreadyExistsException(
'The member you are trying to subscribe already'
. ' exists in this list.'
);
...
You can create custom exception the "symfony way" let's look at how exception or created in symfony:
first create your customExceptionInterface
namespace My\SymfonyBundle\Exception;
/**
* Interface for my bundle exceptions.
*/
interface MySymfonyBundleExceptionInterface
{
}
And create your jsonErrorException
namespace My\SymfonyBundle\Exception;
class HttpException extends \Exception implements MySymfonyBundleExceptionInterface
{
}
Don't hesitate to browse symfony's exceptions code examples on github
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With