Qual o erro?

Gostaria de saber qual o erro nesse método.

[code]package br.gs.dao;

import java.util.List;

public interface DaoGenerico {
T inserir(T t);
T alterar(T t);
T excluir(T t);
}
[/code]

[code]package br.gs.dao;

import java.lang.reflect.ParameterizedType;
import java.util.List;

public class HibernateGenericDao implements DaoGenerico {

@Override
public T inserir(T t) {
	HibernateUtil.getSessao().save(t);
	return t;		
}

@Override
public T alterar(T t) {
	HibernateUtil.getSessao().update(t);
	return t;
}

@Override
public T excluir(T t) {
	HibernateUtil.getSessao().delete(t);
	return t;
}

}

[/code]

[code]package br.gs.dao;

import java.util.List;

public interface OrdemServicoDao extends DaoGenerico {
List listarTodos();
}
[/code]

[code]package br.gs.dao;

import java.util.List;

import br.gs.domain.OrdemServico;

public class HibernateOrdemServicoDao extends HibernateGenericDao implements OrdemServicoDao {

@SuppressWarnings("unchecked")
@Override
public List<OrdemServico> listarTodos() {
	String hql = "from OrdemServico";
	return HibernateUtil.getSessao().createQuery(hql).list();
}

}
[/code]

Erro:

OrdemServicoDao<OrdemServico> osd = new HibernateOrdemServicoDao(); System.out.println(osd.listar());

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version). log4j:WARN Please initialize the log4j system properly. Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at br.gs.dao.HibernateOrdemServicoDao.listar(HibernateOrdemServicoDao.java:13) at br.gs.vision.Principal.formWindowOpened(Principal.java:390) at br.gs.vision.Principal.access$0(Principal.java:380) at br.gs.vision.Principal$1.windowOpened(Principal.java:89) at java.awt.AWTEventMulticaster.windowOpened(Unknown Source) at java.awt.Window.processWindowEvent(Unknown Source) at javax.swing.JFrame.processWindowEvent(Unknown Source) at java.awt.Window.processEvent(Unknown Source) at java.awt.Component.dispatchEventImpl(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Window.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.EventQueue.dispatchEventImpl(Unknown Source) at java.awt.EventQueue.access$000(Unknown Source) at java.awt.EventQueue$3.run(Unknown Source) at java.awt.EventQueue$3.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) at java.awt.EventQueue$4.run(Unknown Source) at java.awt.EventQueue$4.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source)

[quote=anunes]Exception in thread “AWT-EventQueue-0” java.lang.NullPointerException
at br.gs.dao.HibernateOrdemServicoDao.listar(HibernateOrdemServicoDao.java:13) [/quote]

Alguma variável na linha 13 da classe HibernateOrdemServicoDao, no método listar, está nula.

O que está nesta linha

br.gs.dao.HibernateOrdemServicoDao.listar(HibernateOrdemServicoDao.java:13)

Não encontrei este método nos códigos que postou.

[code]package br.gs.dao;

import java.util.List;

import br.gs.domain.OrdemServico;

public class HibernateOrdemServicoDao extends HibernateGenericDao implements OrdemServicoDao {

@SuppressWarnings("unchecked")
@Override
public List<OrdemServico> listar() {
	String hql = "from OrdemServico";
	return HibernateUtil.getSessao().createQuery(hql).list();
}

@SuppressWarnings("unchecked")
@Override
public List<OrdemServico> listarTodos() {
	String hql = "from OrdemServico";
	return HibernateUtil.getSessao().createQuery(hql).list();
}

}
[/code]

Nessa linha: return HibernateUtil.getSessao().createQuery(hql).list(); Acredito que o método getSessao() esteja retornando null

[code]package br.gs.dao;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.cfg.Configuration;

public class HibernateUtil {

private static Session sessao;	
private static SessionFactory sessionFactory;

static {
	Configuration configuracao = new AnnotationConfiguration().configure("hibernate.cfg.xml");
	sessionFactory = configuracao.buildSessionFactory();
}

public static SessionFactory getSessionFactory(){
	return sessionFactory;
}

public static void setSessao(Session sessao) {
	HibernateUtil.sessao = sessao;
}

public static Session getSessao() {
	return sessao;
}

}
[/code]

eu ja rodei tudo que tinha de codigo e nao achei ;x

Alguém tem alguma sugestão?

E onde vc chamou o setSessao? Ele não deveria ter sido criado pelo SessionFactory?