El problema no es el locale sino el request, del cual depende el locale, es un problema conocido, te dejo una referencia
http://symfony.com/blog/new-in-symfo...-request-stack.
La solución que da el usuario es simple, utilizar eventos para obtener el request y luego inyectar el locale
http://symfony.com/doc/current/cookb...y_session.html
Saludos.