hi appfusers, i have declared the next entity
[code] @Entity @Table(name="VA01") @NamedQueries ({ @NamedQuery( name = "findMetadataHeader", query = "select distinct 0 as id, ordencolumna, nombrecolumna, 0 as mvalorcolumna, 0 as orden, 0 as idi18, 0 as idperiodo, 0 as idestructura , tipo from ViewDataGrid order by ordencolumna" ), @NamedQuery( name = "findViewDataGridAllKpis", query = "select v.id, v.ordencolumna, v.nombrecolumna, v.mvalorcolumna, v.orden, v.idi18, v.idperiodo, v.idestructura, v.tipo from ViewDataGrid v where (v.idperiodo is null or v.idperiodo = :idperiodo) and (v.idestructura is null or v.idestructura = :idestructura) and (v.idi18 = :idi18) order by v.orden, v.ordencolumna, v.idperiodo, decode(v.tipo, 'I', 1, 0)" ) }) public class ViewDataGrid { private Long id; private Long ordencolumna; private String nombrecolumna; private String mvalorcolumna; private String orden; private Long idi18; private Long idperiodo; private Long idestructura; private String tipo; .... get and setters... [/code] if i declared the next method, the execution returns a Object list and not a ViewDataGrid List, also, a casting throws a classcast Exception in the test execution [code] public List<ViewDataGrid> getMetadataHeader() { return getHibernateTemplate().findByNamedQuery("findMetadataHeader"); } [/code] but on the other hand, if i declared the next method, the execution returns a ViewDataGrid List [code] public List<ViewDataGrid> getMetadataHeader() { Table table = AnnotationUtils.findAnnotation(ViewDataGrid.class, Table.class); NamedQueries namedQueries = AnnotationUtils.findAnnotation(ViewDataGrid.class, NamedQueries.class); NamedQuery [] aNamedQuery = namedQueries.value(); String sQuery = aNamedQuery[0].query(); sQuery = sQuery.replaceAll("ViewDataGrid", table.name()); Query query = getSession().createSQLQuery(sQuery).addEntity(ViewDataGrid.class); return query.list(); } [/code] What is the problem in the first method ? thanks