[hibernate] sub criteria

1 resposta
B

Ola amigos do GUJ,
Estou com um problema com o criteria... o problema é que ele retorna todos os telefones do usuario em vez de exibir somente com o prefixo "(11)" e se eu colocar "(111)" nenhum resultado é exibido.

Classe DAO:
Criteria criteria = session.createCriteria(TbUsuario.class) 
                    .setFetchMode("tb_telefone", FetchMode.JOIN) 
                    .add(Restrictions.like("CNome", nome + "%"));
					

            Criteria subCriteria = criteria.createCriteria("tbTelefones");
             subCriteria.add(Restrictions.like("CTelefone", "(11)%"));
Mapeamento xml do usuario:
<set inverse="true" name="tbTelefones">
      <key>
        <column name="c_id_usuario"/>
      </key>
      <one-to-many class="Modelo.TbTelefone"/>
    </set>
Mapeamento xml do telefone:
<many-to-one class="Modelo.TbUsuario" fetch="select" name="tbUsuario">
      <column name="c_id_usuario"/>
    </many-to-one>
Resultados exibidos: Bruno ([telefone removido] ([telefone removido] ([telefone removido]

Obrigado pela atenção. 8)

1 Resposta

B

Ja verifiquei o mapeamento e esta tudo ok… Alguem sabe como resolver esse problema?

Criado 12 de outubro de 2009
Ultima resposta 13 de out. de 2009
Respostas 1
Participantes 1