Erro hibernate

pessoal … estou de cabelo em pe aqui!
comecei a usar o hibernate faz pouco tempo, ainda não me acostumei com seus erros.
bom, na pagina de login funciona tudo ok !
ele busca , testa, retorna o ok !!
mas, em outra parte do programa, quando eu tento fazer uma busca, (estava funcionando e eu não mexi ! ) agora, apresenta este erro na pagina :

org.hibernate.exception.SQLGrammarException: could not execute query

no log do netbeans aparece :

org.hibernate.exception.SQLGrammarException: could not execute query
        at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)
        at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
        at org.hibernate.loader.Loader.doList(Loader.java:2148)
        at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029)
        at org.hibernate.loader.Loader.list(Loader.java:2024)
        at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:375)
        at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:308)
        at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:153)
        at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1106)
        at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
        at Negocio.Data.BuscaTodos(Data.java:92)
        at Web.Chamados.geraPagina(Chamados.java:88)
        at Web.Chamados.processRequest(Chamados.java:51)
        at Web.Chamados.doGet(Chamados.java:120)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
        at java.lang.Thread.run(Thread.java:595)
Caused by: java.sql.SQLException: Unknown column 'eventos0_.usuario_id' in 'field list'
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2975)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1600)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1695)
        at com.mysql.jdbc.Connection.execSQL(Connection.java:3004)
        at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1128)
        at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1222)
        at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:76)
        at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:139)
        at org.hibernate.loader.Loader.getResultSet(Loader.java:1669)
        at org.hibernate.loader.Loader.doQuery(Loader.java:662)
        at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
        at org.hibernate.loader.Loader.doList(Loader.java:2145)

meu metodo que faz a busca:

public static List BuscaTodos(String objeto) {
         Session sessao = (Session) HibernateUtility.getSession(); //Abrindo uma sessão
        Transaction transaction = sessao.beginTransaction(); //Iniciando uma transação
        
        Query select = sessao.createQuery("from "+objeto);
        List objetos = select.list();
        
        transaction.commit(); //Finalizando a transação
        sessao.close(); //Fechando a sessão
        return objetos;
    }

e aqui esta minha classe que estou buscando no BD

[code]
public class Eventos {

/** Creates a new instance of Eventos */
private int id, opcao,usuario_id;
private String data;
public Eventos() {
}

public int getId() {
    return id;
}

public void setId(int id) {
    this.id = id;
}

public int getOpcao() {
    return opcao;
}

public void setOpcao(int opcao) {
    this.opcao = opcao;
}

public String getData() {
    return data;
}

public void setData(String data) {
    this.data = data;
}

public int getUsuario_id() {
    return usuario_id;
}

public void setUsuario_id(int usuario_id) {
    this.usuario_id = usuario_id;
}

}[/code]

e finalmente … meu mapeamento :

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-mapping 
	PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>

	<class name="Dados.Eventos" table="eventos_chamados">
	
		<id name="id">
			<generator class="increment"/>
		</id>
		<property name="usuario_id"/>
                <property name="data"/>
                <property name="opcao"/>                
	</class>

</hibernate-mapping>

a chamada ao metodo:

 Iterator iter = Data.BuscaTodos("Eventos").iterator();
            i=0;
            while (iter.hasNext()){
                Eventos eventos = (Eventos) iter.next();   
                if (eventos.getOpcao()==opcoes.getId())
                    i++;
            }

depois eu so mostro o i

aguardo a ajuda de vocês
abraços

Vc já tentou usar o criteria???

Tente fazer o seguinte.

Troque:

public static List BuscaTodos(String objeto) {
         Session sessao = (Session) HibernateUtility.getSession(); //Abrindo uma sessão
        Transaction transaction = sessao.beginTransaction(); //Iniciando uma transação
       
        Query select = sessao.createQuery("from "+objeto);
        List objetos = select.list();
       
        transaction.commit(); //Finalizando a transação
        sessao.close(); //Fechando a sessão
        return objetos;
    } 

Por:

public static List BuscaTodos(Object o) {
         Session sessao = (Session) HibernateUtility.getSession(); //Abrindo uma sessão
        Transaction transaction = sessao.beginTransaction(); //Iniciando uma transação
       
        List<Object> obj = sessao.createCriteria(Object.class)
       
        transaction.commit(); //Finalizando a transação
        
        sessao.close(); //Fechando a sessão
        return obj;
    } 

:arrow: Atenção onde esta escrito Object acima tem de ser do tipo de seu objeto(Aluno, Professor, Escola).

mas onde vai utilizar o Object o que recebe como parametro ?
no codigo eu não vi utilizando ele !
esta faltando algo ou é assim mesmo ?

Veja nos links:
http://www.hibernate.org/hib_docs/v3/api/
http://www.hibernate.org/hib_docs/v3/reference/en/html/querycriteria.html

Vamos utilizar o seu objeto Eventos como exemplo. O seguinte método bastaria para ter todos os seus Eventos.

public static List<Evento> BuscaTodos(Evento o) {
         Session sessao = (Session) HibernateUtility.getSession(); //Abrindo uma sessão
        Transaction transaction = sessao.beginTransaction(); //Iniciando uma transação
       
        List<Evento> obj = sessao.createCriteria(Evento.class)
       
        transaction.commit(); //Finalizando a transação
       
        sessao.close(); //Fechando a sessão
        return obj;
    } 

Leia os links tb

valeu pela ajuda !!!
consegui aqui !!!
obrigado !