Named query do Hibernate + Velocity

5 respostas
Umlauf

Olá,

Tenho um DAO que retorna uma List a partir de uma named query:

select foo.name, count(foo) from eg.Foo foo group by foo.name

No template do velocity, tenho o seguinte:

#if ( $foos.size() > 0 ) #foreach( $foo in $foos ) $foo.name   $foo.get(1) <br/> #end #end

Mas não retorna necas. Na verdade retorna; a lista contém os objetos e, debugando, consigo ver seu conteúdo e está tudo pimba, mas não sei como acessar esse conteúdo pelo Velocity.

Já tentei $foo.name, $foo.get(0), $foo.get(0).name, $foo.qmerda(1548756).naoseimaisoquefazer(x^2) e nada…

Alguma luz?

5 Respostas

F

Posta teu código ai. Quando vc ta jogando a lista pra dentro do contexto do velocity, quando vc chama o dao… essas coisas.

_fs

Quando você usa uma query dessa natureza, o Hibernate não retorna objetos Foo parcialmente populados, mas sim uma list de arrays com os dados

List.get( 0 ) = new Object[ “umlauf”, “programador” ]
List.get( 1 ) = new Object[ “lipe”, “vagabundo” ]

Então pode fazer algo do tipo

#foreach( $array in $list )
     #foreach( $element in $array )
          $element,
     #end
     <br/>
#end
Umlauf

Maravilha!

List.get( 0 ) = new Object[ “umlauf”, “burro” ]
List.get( 1 ) = new Object[ “lipe”, “the best” ]

:smiley:

_fs

hehe isso eu acho uma desgraça no Hibernate :expressionless:

pelo menos na versão 3.0 poderemos usar lazy loading para propriedades hehe … isso sim vai ser bom :smiley:

louds

Quando voce usa projeção em HQL, o Hibernate não cria os objetos.

Criado 20 de outubro de 2004
Ultima resposta 21 de out. de 2004
Respostas 5
Participantes 4