Boa noite galera. Estou penando em uma Criteria aqui para um projeto, e estou recorrendo a vocês, na verdade nem sei se a Criteria pode ser a melhor solução então vamos lá.
Eu preciso exibir em uma tela para o usuário com 7 campos que estão espalhados em 8 tabelas, pois uma é apenas de ligação. Preciso colocar um sort e paginação, pois são muitos resultados e com HQL não consegui o resultado esperado, apesar de funcionar.
Segue a imagem dos meus relacionamentos:

Acima de cada Domain tenho o campo que preciso pegar.
O problema é que da forma antiga, eu trafego um volume muito grande de objetos entre meu servidor e o cliente, e não quero que isto aconteça.
Não consigo pegar somente estes valores de cada Domain. Tentei fazer Join, Alias, mas ele me retorna sempre algum tipo de erro. Alguém com conhecimento maior em Hibernate pode me ajudar?
Meu parâmetro de busca é sempre feito em cima de um campo da tabela ODEF, então sempre começo dela. Eu tentei utilizar subqueries mas por não conhecer muito sobre elas não consegui um resultado efetivo, apesar de acreditar que esta seja a abordagem mais ideal no caso.
Agradeço desde já as respostas.