GUJ
Notícias, artigos e o maior fórum brasileiro sobre Java
home
fórum
notícias
tópicos recentes
empregos
artigos
Bem-vindo ao GUJ.
Crie seu login
, ou digite-o para logar no site.
Usuário:
Senha:
Mapeando Stored Procedure Hibernate
Índice dos Fóruns
»
Desenvolvimento Web
Autor
Mensagem
24/08/2007 12:18:51
Assunto:
Mapeando Stored Procedure Hibernate
formiga
Debugger
Membro desde: 24/08/2004 21:12:00
Mensagens: 54
Offline
Olá,
Estou precisando realizar o mapeamento de um Stored Procedure através do Hibernate.
Procedure.hbm.xml
<hibernate-mapping> <sql-query name="sp_hall_login" callable="true"> <return alias="usuarioBanco" class="br.bean.UsuarioBanco"> <return-property name="nome" column="name"/> <return-property name="senha" column="password"/> </return> { call sp_hall_login( ?,? ) } </sql-query> </hibernate-mapping>
DAO
List list = sessao.getNamedQuery("sp_hall_login"). setParameter(0,pUsuario.getNome()). setParameter(1,pUsuario.getSenha()).list(); Iterator it = list.iterator(); UsuarioBanco user; while(it.hasNext()) { user = (UsuarioBanco) it.next(); System.out.println("Nome: "+user.getNome()); System.out.println("Senha: "+user.getSenha()); }
Dá o seguinte erro
Erro: java.lang.UnsupportedOperationException: org.hibernate.dialect.HSQLDialect does not support resultsets via stored procedures Exception in thread "main" java.lang.UnsupportedOperationException: org.hibernate.dialect.HSQLDialect does not support resultsets via stored procedures at org.hibernate.dialect.Dialect.registerResultSetOutParameter(Dialect.java:897) at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1574) 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:2150) at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029) at org.hibernate.loader.Loader.list(Loader.java:2024) at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:117) at org.hibernate.impl.SessionImpl.listCustomQuery(SessionImpl.java:1607) at org.hibernate.impl.AbstractSessionImpl.list(AbstractSessionImpl.java:121) at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:169) at br.dao.UsuarioDAO.logar(UsuarioDAO.java:47) at br.dao.UsuarioDAO.main(UsuarioDAO.java:123)
Alguem sabe como devo proceder?
Att.
----------------------------------------------------
Isac Velozo
http://www.isacvelozo.com
----------------------------------------------------
24/08/2007 13:50:18
Assunto:
Re:Mapeando Stored Procedure Hibernate
ualex
JavaGuru
Membro desde: 26/08/2004 18:45:26
Mensagens: 229
Offline
org.hibernate.dialect.HSQLDialect does not support resultsets via stored procedures
dialeto errado, procure o dialeto correto para seu banco de dados.
http://www.alexflorentino.com
24/08/2007 15:23:41
Assunto:
Re:Mapeando Stored Procedure Hibernate
formiga
Debugger
Membro desde: 24/08/2004 21:12:00
Mensagens: 54
Offline
Mudei o dialeto para:
<property name="dialect"> org.hibernate.dialect.SybaseDialect </property>
E está ocorrendo o erro abaixo:
Hibernate: { call sp_hal_login( ?, ? ) } Erro: org.hibernate.exception.SQLGrammarException: could not execute query Exception in thread "main" org.hibernate.exception.SQLGrammarException: could not execute query at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:65) at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) at org.hibernate.loader.Loader.doList(Loader.java:2153) at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029) at org.hibernate.loader.Loader.list(Loader.java:2024) at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:117) at org.hibernate.impl.SessionImpl.listCustomQuery(SessionImpl.java:1607) at org.hibernate.impl.AbstractSessionImpl.list(AbstractSessionImpl.java:121) at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:169) at br.dao.UsuarioDAO.logar_2(UsuarioDAO.java:81) at br.dao.UsuarioDAO.main(UsuarioDAO.java:164) Caused by: java.sql.SQLException: S0022: Invalid column name 'name'. at com.sybase.jdbc3.jdbc.ErrorMessage.raiseError(Unknown Source) at com.sybase.jdbc3.tds.TdsResultSet.findColumnByLabel(Unknown Source) at com.sybase.jdbc3.jdbc.SybResultSet.findColumn(Unknown Source) at com.sybase.jdbc3.jdbc.SybResultSet.getString(Unknown Source) at org.hibernate.type.StringType.get(StringType.java:18) at org.hibernate.type.NullableType.nullSafeGet(NullableType.java:113) at org.hibernate.type.NullableType.nullSafeGet(NullableType.java:102) at org.hibernate.loader.Loader.getKeyFromResultSet(Loader.java:1088) at org.hibernate.loader.Loader.getRowFromResultSet(Loader.java:554) at org.hibernate.loader.Loader.doQuery(Loader.java:689) at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224) at org.hibernate.loader.Loader.doList(Loader.java:2150) ... 8 more
Agradecido
----------------------------------------------------
Isac Velozo
http://www.isacvelozo.com
----------------------------------------------------
03/07/2009 08:13:05
Assunto:
Re:Mapeando Stored Procedure Hibernate
lrgalego
Thread.start()
Membro desde: 06/05/2007 21:40:27
Mensagens: 36
Offline
No stack temos
Caused by: java.sql.SQLException: S0022: Invalid column name 'name'.
ou seja, o nome que voce mapeou no xml para o parametro da procedure não existe na definição dela no banco de dados
SCJP 6
CODEPLACE
13/11/2009 11:10:56
Assunto:
Re:Mapeando Stored Procedure Hibernate
andresmafra
JavaBaby
Membro desde: 03/05/2008 09:45:16
Mensagens: 89
Offline
Poderiam me explicar como faço para mapear uma procedure via xml??
Obrigado
VISITE:
http://grepcep.com
Índice dos Fóruns
»
Desenvolvimento Web
Ir para:
Selecione um Fórum
Notícias
Assuntos gerais (Off-topic)
MundoJ - Artigos, Notícias e Debates
Artigos e Tutoriais
Java Básico
Java Avançado
Ferramentas, Frameworks e Utilitários
Desenvolvimento Web
Interface Gráfica
Google Android e Java Micro Edition (ME)
Certificação Java
Persistência: Hibernate, JPA, JDBC e outros
Java Enterprise Edition (Java EE)
Frameworks e Bibliotecas brasileiros
RIA - Flex, JavaFX e outros
Arquitetura de Sistemas
Metodologias de Desenvolvimento e Testes de Software
JavaScript
Ruby & Ruby on Rails
Outras Linguagens
Powered by
JForum 2.1.8
©
JForum Team