I followed Symfony's cookbook on how to override bundle controller, but for some reason I can't get it working.

My `OAuth` bundle is a child of `FOSOAuthServerBundle`. My `TokenController` is declared as class TokenController extends `\FOS\OAuthServerBundle\Controller\TokenController`. But for some reason I still get parent controller executed, instead of my own controller (child). When I alter routing manually to point `/oauth/v2/token` to my `TokenController` directly, I get it executing, but with an 500 error:

> 
> Argument 1 passed to FOS\OAuthServerBundle\Controller\TokenController::\_\_construct() must be an instance of OAuth2\OAuth2, none given, called in /.../vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Controller/ControllerResolver.php on line 78 and defined (500 Internal Server Error)
> 
> 
> 

Why? I am puzzled. What's wrong? Any help will be appreciated. Thanks.