Problema com JPA Query e LazyInitialization de objetos

Tenho uma classe RegistroDisciplina na qual existe um atributo que contém uma lista de turmas e cada turma possui uma disciplina.

Preciso recuperar todos os registro de disciplina de um aluno específico e um dos dados que preciso utilizar é a disciplina cursada.

Tenho a seguinte NamedQuery:

Consigo acessar todos os atributos não-compostos da minha turma. No entanto, o atributo disciplina(da classe Disciplina) não é carregado em Lazy. Preciso que minha query carregue apenas esse atributo composto como EAGER para que eu possa acessar os atributos dessa classe.

Consigo resolver esse problema se anotar na classe turma que o relacionamento com a disciplina é EAGER, porém, gostaria de saber se alguém tem idéia de como posso fazer isso apenas com algumas alterações na query?

Você precisa fazer JOIN com as colunas que deseja carregar os dados. No seu caso ficaria desta forma:

SELECT r FROM RegistroDisciplina r INNER JOIN FETCH r.turma t INNER JOIN FETCH t.disciplina d INNER JOIN FETCH r.aluno a WHERE a.matricula = :matricula