Srs,
Preciso realizar a consulta de um objeto atraves de sua chave primaria, porem no meu método que chama o método de consulta não é executado, veja minha interface Dao:
public interface Dao<T> {
public void persist(T t);
public void update(T t);
public void remove(T t);
public T search(Serializable id);
public List<T> listAll();
public List<T> findByExample(T example);
public List<T> findByCriteria(Criterion... criterions);
}
Classe que implementa o Dao
public class DaoHibernate<T> implements Dao<T> {
private Session session;
private Class persistentClass;
public DaoHibernate(Session session, Class persistentClass) {
this.session = session;
this.persistentClass = persistentClass;
}
public Class getPersistentClass() {
return persistentClass;
}
public void setPersistentClass(Class persistentClass) {
this.persistentClass = persistentClass;
}
public Session getSession() {
return session;
}
public void setSession(Session session) {
this.session = session;
}
public void persist(T t) {
getSession().save(t);
}
public void remove(T t) {
getSession().delete(t);
}
public T search(Serializable id) {
return (T) getSession().load(persistentClass, id);
}
public List<T> listAll() {
return getSession().createCriteria(persistentClass).list();
}
public void update(T t) {
getSession().update(t);
}
public List<T> findByExample(T example) {
Criteria crit = getSession().createCriteria(persistentClass);
Example ex = Example.create(example);
crit.add(ex);
return crit.list();
}
public List<T> findByCriteria(Criterion... criterions){
Criteria crit = getSession().createCriteria(persistentClass);
for(Criterion c : criterions){
crit.add(c);
}
return crit.list();
}
}
E agora dentro da minha aplicação chamando o método search
private void btnSearchActionPerformed(java.awt.event.ActionEvent evt) {
if (fieldPtw.getText().equals("")) {
JOptionPane.showMessageDialog(null, "PTW ou NGEM não informado", "Mensagem do sistema", JOptionPane.ERROR_MESSAGE);
} else {
this.ativity = daoAtitivy.search(1);
}
}
O mais interessante é que seu eu chamar por exemplo o método listAll o mesmo é chamado normalmente.
Alguém já teve algum problema deste tipo?
Att,
Paulo