Dúvida de Hibernate 3 + Spring

0 respostas
tatianaesc

Pessoal,

Estou fazendo uma aplicação web com Spring e Hibernate 3 e estou encontrando problemas. Estou apenas tentando listar todos os usuários do banco. Para tal, criei uma classe ListaUsuarios com uma main, assim:
public static void main(String[] args)
    {
        Session session = new HibernateFactory().getSession();
       
        List<Usuario> usuarios = session.createQuery( "from Usuario order by login" ).list();
       
        for (Usuario u : usuarios) {
            System.out.println( "Id: " + u.getUsuarioId() + " - " + u.getLogin() );
        }
        session.close();
    }
Isso está funcionando... Imprime os usuários corretamente. Para então integrar com minha aplicação web, eu criei um método getUsuariosHib() idêntico, assim: - Hide quoted text -
public List<Usuario> getUsuariosHib()
    {
        Session session = new HibernateFactory().getSession();
       
        List<Usuario> usuarios = session.createQuery( "from Usuario order by login" ).list();
       
        session.close();
        return usuarios;
    }
e estou chamando ele no meu UsuarioManager, assim:
public List<Usuario> getUsuariosHibernate()
    {
        ListaUsuarios lista = new ListaUsuarios();
        return lista.getUsuariosHib();
    }

Só que aí dá o seguinte erro:

Hibernate:
    select
        usuario0_.usuarioId as usuarioId1_,
        usuario0_.login as login1_,
        usuario0_.senha as senha1_,
        usuario0_.nome as nome1_
    from
        Usuario usuario0_
    order by
        usuario0_.login
11:16:36,453 ERROR JDBCExceptionReporter:72 - Table/View 'USUARIO' does not exist.
11:16:36,468 ERROR DispatcherServlet:411 - Could not complete request
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:2147)
    at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2028)
    at org.hibernate.loader.Loader.list(Loader.java :2023)
    at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:393)
    at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:338)
    at org.hibernate.engine.query.HQLQueryPlan.performList (HQLQueryPlan.java:172)
    at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1121)
    at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
    at br.pucrio.inf.hibernate.ListaUsuarios.getUsuariosHib(ListaUsuarios.java :30)
    at br.pucrio.inf.core.UsuarioManager.getUsuariosHibernate(UsuarioManager.java:28)
    at br.pucrio.inf.controller.UsuarioController.handleRequest(UsuarioController.java:27)
    at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle (SimpleControllerHandlerAdapter.java:44)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:723)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java :663)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:394)
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:348)
    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.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:524)
    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:869)
    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
    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: Table/View 'USUARIO' does not exist.
    at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
    at org.apache.derby.impl.jdbc.Util.generateCsSQLException (Unknown Source)
    at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source)
    at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedConnection.handleException (Unknown Source)
    at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedPreparedStatement.<init>(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedPreparedStatement20 .<init>(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedPreparedStatement30.<init>(Unknown Source)
    at org.apache.derby.jdbc.Driver30.newEmbedPreparedStatement(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement (Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(Unknown Source)
    at org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java:497)
    at org.hibernate.jdbc.AbstractBatcher.getPreparedStatement (AbstractBatcher.java:415)
    at org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement(AbstractBatcher.java:139)
    at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1560)
    at org.hibernate.loader.Loader.doQuery (Loader.java:661)
    at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
    at org.hibernate.loader.Loader.doList(Loader.java:2144)
    ... 32 more
11:16:36,484 ERROR [dissTatiana]:253 - Servlet.service() for servlet dissTatiana threw exception
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:2147)
    at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2028)
    at org.hibernate.loader.Loader.list(Loader.java:2023)
    at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:393)
    at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:338)
    at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
    at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1121)
    at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
    at br.pucrio.inf.hibernate.ListaUsuarios.getUsuariosHib(ListaUsuarios.java:30)
    at br.pucrio.inf.core.UsuarioManager.getUsuariosHibernate(UsuarioManager.java:28)
    at br.pucrio.inf.controller.UsuarioController.handleRequest (UsuarioController.java:27)
    at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch (DispatcherServlet.java:723)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:663)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java :394)
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:348)
    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.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke (AuthenticatorBase.java:524)
    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:869)
    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection (Http11BaseProtocol.java:664)
    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: Table/View 'USUARIO' does not exist.
    at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
    at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source)
    at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException (Unknown Source)
    at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source)
    at org.apache.derby.impl.jdbc.ConnectionChild.handleException (Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedPreparedStatement.<init>(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedPreparedStatement20.<init>(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedPreparedStatement30 .<init>(Unknown Source)
    at org.apache.derby.jdbc.Driver30.newEmbedPreparedStatement(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement (Unknown Source)
    at org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java:497)
    at org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java:415)
    at org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement (AbstractBatcher.java:139)
    at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1560)
    at org.hibernate.loader.Loader.doQuery(Loader.java:661)
    at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections (Loader.java:224)
    at org.hibernate.loader.Loader.doList(Loader.java:2144)
    ... 32 more
É estranho, pois o código da main funciona... Já tentei colocar o caminho completo do pacote no HQL e ainda assim não funcionou. Alguém sabe o que pode estar acontecendo?

[]´s
Tatiana

Criado 27 de novembro de 2006
Respostas 0
Participantes 1