Ajuda com hibernate

3 respostas
felipe.sodre

Pessoal estou com um oproblema no hibernate que estou passando mal ja,

Classe GrupoAcessoAcoes is not mapped, e ela ja esta mapeada

@Entity

@Table(name = GRUPOSACESSO_ACOES)

public class GruposAcessoAcoes extends ObjetoPersistente implements Lifecycle {

@Id
private GruposAcessoAcoesId id;

A classe GrupoAcessoAcoes possui uma chave composta de qautro atributos e os geters and seters

@Embeddable
public class GruposAcessoAcoesId implements Serializable {

private static final long serialVersionUID = -5412059177704943292L;

private String codGrupoAcesso;
private String codModulo;
private String codAplicativo;
private String codAcao;

br.com.sigga.modelo.cadastrobasico.grupoacesso.GruposAcessoAcoes
br.com.sigga.modelo.cadastrobasico.grupoacesso.GruposAcessoAcoesId

???

Muito Obrigado
VCS SABEM QUE PORCARIA EH ESSA DE IS NOT MAPPED QUANDO NO PERSISTENCE>XML ELA ESTA LA BONITINHA

3 Respostas

febatata

Tenta colocar a anotação:

@EmbeddedId
private GruposAcessoAcoesId id;

Ao invés de:

@Id
private GruposAcessoAcoesId id;
felipe.sodre

Talvez olhando meu join vc entenda por que ele naum encontra

public List recuperarPorFiltro(GruposAcesso grupoAcessos, GruposAcessoAcoes grupoAcessoAcoes)

throws Exception {

getServiceLocator().getEntityManager().getTransaction().begin();

StringBuffer sql = new StringBuffer(SELECT obj);

sql.append(" FROM GruposAcesso as obj, GrupoAcessoAcoes as grpAcessoAcoes");

sql.append(" where 1 = 1  and obj.codGrupoAcesso = grpAcessoAcoes.id.codGrupoAcesso");

if(!StringUtils.isEmpty(grupoAcessos.getCodGrupoAcesso())){

sql.append(" and UPPER(obj.codGrupoAcesso)=’"+ grupoAcessos.getCodGrupoAcesso().toUpperCase()+"’");

}

if(!StringUtils.isEmpty(grupoAcessos.getDescricao())){

sql.append(" and UPPER(obj.descricao)=’"+ grupoAcessos.getDescricao().toUpperCase()+"’");

}

if(!StringUtils.isEmpty(grupoAcessoAcoes.getId().getCodModulo())){

sql.append(" and UPPER(grpAcessoAcoes.id.codModulo)=’"+ grupoAcessoAcoes.getId().getCodModulo().toUpperCase()+"’");

}

if(!StringUtils.isEmpty(grupoAcessoAcoes.getId().getCodAplicativo())){

sql.append(" and UPPER(grpAcessoAcoes.id.codAplicativo)=’"+ grupoAcessoAcoes.getId().getCodAplicativo().toUpperCase()+"’");

}

if(!StringUtils.isEmpty(grupoAcessoAcoes.getId().getCodAcao())){

sql.append(" and UPPER(grpAcessoAcoes.id.codAcao)=’"+ grupoAcessoAcoes.getId().getCodAcao().toUpperCase()+"’");

}
sql.append(" order by obj.codGrupoAcesso");
	Query hqlGruposAcesso = getServiceLocator().getEntityManager().createQuery(sql.toString());
    List<GruposAcesso> listaGrupoAcessos = hqlGruposAcesso.getResultList();
	getServiceLocator().getEntityManager().getTransaction().commit();
	getServiceLocator().getEntityManager().close();
	return listaGrupoAcessos;
}
felipe.sodre

Amigo depois de muito quebrar a cabeca
deu certo obrigado, meu persistence tava com pau, eclipse europa mesmo…

muito obrigado!!!

Agradeço ao pessoal do guj por sempre ajudar, caso possa ajudar [email removido]

Criado 6 de janeiro de 2009
Ultima resposta 6 de jan. de 2009
Respostas 3
Participantes 2