Olá estou tentando pela primeira vez montar um createQuery
e está me dando o erro abaixo
Algumas duvidas :
-
no select estou usando o nome do objeto e não a tabela do banco ?
-
para ver o resultado estou usando Object é assim mesmo pois no select
tem atributos de dois objetos é asism mesmo ou tem outra forma de pegar
o resultado ?
se alguem puder me ajudar gradeceria
try{
System.out.println("Inico ...testCreateQuery()");
String parametro = "Exemplo";
StringBuilder hql = new StringBuilder();
hql.append("select a.id , a.value ,b.name,b.description");
hql.append("from ImsDocument a ");
hql.append("left join a.ImsDocumentField b");
hql.append("where b.name = :name ");
Query query = imsDBMng.getManager().createQuery(hql.toString());
query.setParameter("name", parametro);
List lista = query.getResultList();
for (int i=0;i<lista.size();i++){
Object [] rs = (Object[]) lista.get(i);
System.out.println("valor de rs ="+rs[i]);
}
[code]
Inico …testCreateQuery()
- line 1:49: unexpected token: Ims_Document
- processEqualityExpression() : No expression to process!
- line 1:64: unexpected token: left
Erro testCreateQuery() =java.lang.IllegalArgumentException: org.hibernate.hql.ast.QuerySyntaxException: unexpected token: Ims_Document near line 1, column 49 [select a.id , a.value ,b.name,b.descriptionfrom Ims_Document a left join a.Ims_Document_Field bwhere b.name = :name ]
[/code]">