[RESOLVIDO] - Ocultando Campo em Retorno de JPA

Existe alguma maneira de mapear uma entidade e no retorno de algumas queries alguns campos serem ocultados? Por exemplo:

Entidade

[code]
@Entity
public class EntityTest {

@Id
@Column(name = “id_entity”)
private Long id;

@Colum(name = “field_a”)
private String a;
}[/code]

Query:

Desde já agradeço a ajuda.

Se você está chamando de ocultar apenas não retornar algum atributo, não existe necessidade alguma disso.

A analise da quer vai ser o mesmo, a não ser que sua entidade tenha uns 100 atributos.

select d.id from Dado d

A forma que o Hebert falou funciona.

No caso seria retornado apenas um long e não a entidade populada.

Seria isso mesmo Hebert.

O projeto estava usando native query por isso dava erro na hora de retornar só alguns campos, passei algumas queries para EJB-QL.

Só que acabou gerando um outro erro, quando eu escolho o campo que deve ser retornado eu recebo um Object, que irá me obrigar a fazer o bind na mão, isso estaria certo?

Aqui mostra como fazer as queries: JPA Consultas e Dicas.

Se você está usando EJBQL eu não sei como funciona direito a consulta por ele.

Se for JPQL/HQL aí sim o link acima funciona.

EJB-QL também não sei como funciona.

Mas se for com JPQL, quando você escolhe os atributos que devem vir, você recebe sim um Array de Object.

Você pode criar um construtor na sua entidade com os parâmetros que está buscando e receber sua própria entidade.

Ou iterar o array, popular e instanciar sua entidade na mão.

Veja este post, pode te ajudar. http://blog.caelum.com.br/jpa-com-hibernate-heranca-e-mapeamentos/

Muito obrigado pelos links me ajudaram muito!

E pela solução dada!