Delete com Hibernate

Pessoal

Estou usando Spring+Hibernate e precisaria excluir alguns registros do banco só que não é pelo ID do objeto mas sim por um outro campo então fiz o seguinte:

public void removeDisciplinaOfertadaHorarioPorDisciplinaOfertada(final Long codigoDisciplinaOfertada){ getHibernateTemplate().execute(new HibernateCallback() { String deleteHorarioQuery = "from DisciplinaOfertadaHorario dhi where dhi.disciplinaOfertada.codigo = ?"; public Object doInHibernate(Session ses) throws HibernateException { ses.delete(deleteHorarioQuery, new Object[] { codigoDisciplinaOfertada }); return null; } }); }

Não sei o que tem de errado mas esta dando “exception is org.hibernate.MappingException Unknown entity” e esta entidade DisciplinaOfertadaHorario existe no meu mapeamento.

Desde já agradeço

O que acontece quando vc tenta carregar esta entidade? Funciona direitinho?

Vc já tentou fazer um teste preenchendo o ID manualmente, só para descargo de conciência?

Blz Franklin

Para caregar a entidade esta tudo funcionando normal, eu tenho um unitTest e tenho também a tela para cadastro deste horario e tudo funciona perfeito. Inclusive se mando deletar o objeto tipo assim:

[code] public final void removeDisciplinaOfertadaHorario(Long codigo) {

    DisciplinaOfertadaHorario disciplinaOfertadaHorario = getDisciplinaOfertadaHorario(codigo);
    getHibernateTemplate().delete(disciplinaOfertadaHorario);
}[/code]

isto funciona blz

Franklin

Consegui resolver o problema :grin: até que enfim hehehe

tive que trocar o código para:

getHibernateTemplate().execute(new HibernateCallback(){
			public Object doInHibernate(Session session) throws HibernateException, SQLException {
				session.createQuery("delete DisciplinaOfertadaHorario dhi where dhi.disciplinaOfertada.codigo = (:codigoDisciplinaOfertada)")
					   .setParameter( "codigoDisciplinaOfertada", codigoDisciplinaOfertada )
					   .executeUpdate();
				return null;
			}
		});

Agradeço a ajuda

Um abraço