Cómo inyectar algo en un formulario

Desde play 2.4.0, podemos usar un marco DI.

Estoy tratando de usar DI en mi aplicación. Moví mis buscadores jpa de métodos estáticos en mis clases de modelos a métodos en una capa de servicio que inyecto en mis controladores.

Mi principal problema es que tengo algunas formas con un método de validación y en mi método de validación uso algunos buscadores.

Por ejemplo, en un formulario de inicio de sesión, uso el método "User.authenticate". Ahora que he reemplazado este método estático por uno nuevo en mi UserSvc, quiero inyectar mi servicio en mi Formulario, pero no funciona.

Parece que no es posible inyectar algo en un formulario, entonces, ¿cómo puedo resolver mi problema?

public class MyController {
    // Inject here can be used in controller methods but not in the form validate method
    @Inject UserSvc userSvc;
    public static class Login {
        // Inject here is not filled : NPE
        @Inject UserSvc userSvc;
        public String email;
        public String password;
        public String validate() {
            // How can I use userSvc here ?
        }
    }

    @Transactional(readOnly = true)
    public Result authenticate() {
        Form<Login> loginForm = form(Login.class).bindFromRequest();

        if (loginForm.hasErrors()) {
            return badRequest(login.render(loginForm));
        } else {
            Secured.setUsername(loginForm.get().email);
            return redirectConnected();
        }
    }
}

Respuestas a la pregunta(1)

Su respuesta a la pregunta