Por favor, verifique se você não está perdendo isso.
se você não estiver obtendo o objeto de usuário na consulta, pode ser porque você não está buscando o UserWithPassword de maneira EAGER. A busca lenta do objeto cria um objeto proxy para os objetos internos e, portanto, você não obterá o valor do objeto User.
E espero que o tipo de busca padrão seja LAZY se não estiver errado