setResultTransformer para n tabelas

0 respostas
F

Oi pessoal,

Estou realizando o mapeamento da seguinte query:

hql = "select this_.ID_DOCUMENTO_COMISSAO           \"id\"," +
			"       this_.FL_ATIVO                        as \"ativo\"," +
			"       this_.ID_COMISSAO                     as \"comissoes\"," +
			"       this_.DT_ENTRADA_COMISSAO             as \"dataEntrada\"," +
			"       this_.DT_SAIDA_COMISSAO               as \"dataSaida\"," +
			"       this_.TX_DS_SAIDA_COMISSAO            as \"descricao\"," +
			"       this_.ID_DOCUMENTO                    as \"documentos\"," +
			"       documentos.ID_DOCUMENTO             as \"documentos\"," +
			"       documentos.ID_DOCUMENTO_STATUS      as \"documentos.documentosStatus\"," +
			"       documentos.ID_DOCUMENTO_SPL         as \"idDocumentoSPL\"," +
			"       documentos.ID_TIPO_DOCUMENTO        as \"documentos.tipoDocumento\"," +
			"       documenton2_.ID_DOCUMENTO             as ID_DOCUMENTO," +
			"       documenton2_.TP_PARTICIPANTE          as TP_PARTICIPANTE," +
			"       documenton2_.ID_DOCUMENTO_SPL         as ID_DOCUMENTO_SPL," +
			"       documenton2_.ID_NATUREZA              as ID_NATUREZA," +
			"       documenton2_.ID_PARTICIPANTE          as ID_PARTICIPANTE," +
			"       documenton2_.ID_TIPO_DOCUMENTO        as ID_TIPO_DOCUMENTO," +
			"       documenton2_.NM_NATUREZA              as NM_NATUREZA," +
			"       documenton2_.NM_PARTICIPANTE          as NM_PARTICIPANTE," +
			"       documenton2_.NR_ANO_LEGISLATIVO       as NR_ANO_LEGISLATIVO," +
			"       documenton2_.NR_LEGISLATIVO           as NR_LEGISLATIVO," +
			"       documentos8_.ID_DOCUMENTO_STATUS      as ID_DOCUMENTO_STATUS," +
			"       documentos8_.TX_NM_DOCUMENTO_STATUS   as TX_NM_DOCUMENTO_STATUS," +
			"       tipodocume9_.ID_TIPO_DOCUMENTO        as ID_TIPO_DOCUMENTO," +
			"       tipodocume9_.TX_NM_TIPO_DOCUMENTO     as TX_NM_TIPO_DOCUMENTO," +
			"       documentos3_.ID_DOCUMENTO             as ID_DOCUMENTO," +
			"       documentos3_.ID_COMISSAO              as ID_COMISSAO," +
			"       documentos3_.ID_DOCUMENTO_RELATOR     as ID_DOCUMENTO_RELATOR," +
			"       documentos3_.ID_DOCUMENTO_RELATOR     as ID_DOCUMENTO_RELATOR," +
			"       documentos3_.FL_ATIVO                 as FL_ATIVO," +
			"       documentos3_.DT_DISTRIBUICAO_RELATOR  as DT_DISTRIBUICAO_RELATOR," +
			"       documentos3_.DT_MANIFESTACAO_RELATOR  as DT_MANIFESTACAO_RELATOR," +
			"       documentos3_.ID_DOCUMENTO             as ID_DOCUMENTO," +
			"       documentos3_.ID_COMISSAO              as ID_COMISSAO," +
			"       documentos3_.ID_RELATOR_SPL           as ID_RELATOR_SPL," +
			"       documentos3_.ID_TIPO_MANIFESTACAO     as ID_TIPO_MANIFESTACAO," +
			"       relatordad4_.ID_RELATOR_SPL           as ID_RELATOR_SPL," +
			"       relatordad4_.FL_ATIVO                 as FL_ATIVO," +
			"       relatordad4_.DT_SISTEMA               as DT_SISTEMA," +
			"       relatordad4_.ID_COMISSAO_SPL          as ID_COMISSAO_SPL," +
			"       relatordad4_.ID_DOCUMENTO             as ID_DOCUMENTO," +
			"       relatordad4_.ID_DOCUMENTO_SPL         as ID_DOCUMENTO_SPL," +
			"       relatordad4_.NM_RELATOR               as NM_RELATOR," +
			"       tipomanife12_.ID_TIPO_MANIFESTACAO    as ID_TIPO_MANIFESTACAO," +
			"       tipomanife12_.TX_NM_TIPO_MANIFESTACAO as TX_NM_TIPO_MANIFESTACAO," +
			"       documentov13_.ID_DOCUMENTO            as ID_DOCUMENTO," +
			"       documentov13_.ID_DOCUMENTO_STATUS     as ID_DOCUMENTO_STATUS," +
			"       documentov13_.ID_DOCUMENTO_SPL        as ID_DOCUMENTO_SPL," +
			"       documentov13_.ID_TIPO_DOCUMENTO       as ID_TIPO_DOCUMENTO " +
			"  from TBEC_DOCUMENTO_COMISSAO this_," + 
			"       TBEC_DOCUMENTO          documentos, " +
			"       VWEC_DOCUMENTOS         documenton2_, " +
			"       TBEC_DOCUMENTO_STATUS   documentos8_, " +
			"       TBEC_TIPO_DOCUMENTO     tipodocume9_, " +
			"       TBEC_DOCUMENTO_RELATOR  documentos3_, " +
			"       VWEC_RELATORES          relatordad4_, " +
			"       TBEC_TIPO_MANIFESTACAO  tipomanife12_, " +
			"       TBEC_DOCUMENTO          documentov13_ " +
			" where this_.ID_DOCUMENTO = documentos.ID_DOCUMENTO(+) " +
			"   and documentos.ID_DOCUMENTO = documenton2_.ID_DOCUMENTO(+) " +
			"   and documentos.ID_DOCUMENTO_STATUS = " +
			"       documentos8_.ID_DOCUMENTO_STATUS(+) " +
			"   and documentos.ID_TIPO_DOCUMENTO = tipodocume9_.ID_TIPO_DOCUMENTO(+) " +
			"   and this_.ID_DOCUMENTO = documentos3_.ID_DOCUMENTO(+) " +
			"   and this_.ID_COMISSAO = documentos3_.ID_COMISSAO(+) " +
			"   and documentos3_.ID_DOCUMENTO = relatordad4_.ID_DOCUMENTO(+) " +
			"   and documentos3_.ID_RELATOR_SPL = relatordad4_.ID_RELATOR_SPL(+) " +
			"   and documentos3_.ID_TIPO_MANIFESTACAO = " +
			"       tipomanife12_.ID_TIPO_MANIFESTACAO(+) " +
			"   and this_.ID_DOCUMENTO = documentov13_.ID_DOCUMENTO(+) " +
			"   and this_.ID_COMISSAO = :idComissao " +
			"   and documentos.ID_TIPO_DOCUMENTO = :idTipoDocumento " +
			" order by documenton2_.NR_ANO_LEGISLATIVO   asc, " +
			"          documenton2_.NR_LEGISLATIVO       asc, " +
			"          relatordad4_.DT_SISTEMA           desc, " +
			"          documentos3_.ID_DOCUMENTO_RELATOR desc ";

Estou utlizando native query por causa da condição " and documentos3_.ID_DOCUMENTO = relatordad4_.ID_DOCUMENTO(+) "

Tentei fazer essa transformação:

org.hibernate.Query query = getSession().createSQLQuery(hql).setResultTransformer(Transformers.aliasToBean(DocumentoComissaoVO.class));

O documentoComissao está relacionado com documento que está relacionado com documentoStatus.
Na query tentei isso: as "documentos.documentosStatus"
E recebi isso:

org.hibernate.PropertyNotFoundException: Could not find setter for documentos.documentosStatus on class DocumentoComissaoVO

Como realizo o mapeamento das outras classes? E se tiver lista em umas dessas entidades?

Obrigado.

Criado 20 de setembro de 2012
Respostas 0
Participantes 1