Soanta Admin Bundle Locale

Tengo un problema con la traducción. yo suelo

symfony 2.7sonata admin-bundle 2.3

He creado el oyente de inicio de sesión interactivo, cuando el usuario inicia sesión en la aplicación, obtengo la configuración regional del usuario y configuro la sesión _locale, pero esto se ignora en sonata.

El oyente es

class UserLocaleListener {

 /**
  * @var Session
  */
private $container;


public function __construct(Session $session)
{
    $this->session = $session;
}

public function onInteractiveLogin(InteractiveLoginEvent $event)
{
    $request = $event->getRequest();

    $user = $event->getAuthenticationToken()->getUser();


    if (null !== $user->getLocale()) {
        $this->session->set('_locale', $user->getLocale());
        //$request->setLocale($user->getLocale());
        var_dump($request->getSession()->get('_locale'));
    }
  }
}

en service.yml agregar

app.user_locale_listener:
    class: xxxxxx\xxxxxxxx\EventListener\UserLocaleListener
    arguments: ["@session"]
    tags:
        - { name: kernel.event_listener, event: security.interactive_login,       method: onInteractiveLogin }

¿Dónde está mi error?

Respuestas a la pregunta(1)

Su respuesta a la pregunta