Malgré la lecture de la doc FosUserBundle sur la surcharge des controller, j'avais systématiquement l'erreur suivante lorsque je voulais surcharger registerAction dans le controller RegistrationController :
You have requested a non-existent service "fos_user.registration.form"
J'ai donc appliqué ce qui était indiqué dans la doc Symfony2 http://symfony.com/fr/doc/current/cookbook/bundles/inheritance.html mais j'avais également une erreur :
Catchable Fatal Error: Argument 1 passed to FOS\UserBundle\Controller\RegistrationController::registerAction() must be an instance of Symfony\Component\HttpFoundation\Request, none given
La solution est la suivante :
$response = parent::registerAction( $request );
au lieu de
$response = parent::registerAction();
Code complet :
<?php
namespace UserBundle\Controller;
use FOS\UserBundle\Controller\RegistrationController as BaseController;
use Symfony\Component\HttpFoundation\Request;
class RegistrationController extends BaseController
{
public function registerAction(Request $request)
{
$response = parent::registerAction( $request );
return $response;
}
}