Ola pessoal do Guj…
Estou tentando executar uma sql nativa, usando hibernate.
É assim que estou testando :
package br.com.esfera.persistence;
import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
public class HibernateTeste {
/**
* @param args
*/
public static void main(String[] args) {
Session s = HibernateUtil.getSession();
Transaction t = s.beginTransaction();
t.begin();
//System.out.println("Vai entrar no try");
//try {
String queryString = " select" +
" florenca.t064ceplogradouro.codlogradouro064 as CodLogradouro," +
" florenca.t064ceplogradouro.tipo064 as Tipologradouro," +
" florenca.t064ceplogradouro.nome064 as logradouro, " +
" florenca.t063cepbairro.codbairro063 as CodBairro," +
" florenca.t063cepbairro.nome063 as bairro," +
" florenca.t062cepcidade.codcidade062 as codCidade," +
" florenca.t062cepcidade.nome062 as cidade," +
" florenca.t061cepuf.codestado061 as codUF," +
" florenca.t061cepuf.nome061 as UF," +
" florenca.t060ceppais.codpais060 as codPais," +
" florenca.t060ceppais.nome060 as Pais" +
" from" +
" t064ceplogradouro," +
" t063cepbairro," +
" t062cepcidade," +
" t061cepuf," +
" t060ceppais" +
" where" +
" numcep064 = '81930340'" +
" and" +
" florenca.t064ceplogradouro.codcidade062 = florenca.t062cepcidade.codcidade062" +
" and" +
" florenca.t064ceplogradouro.codbairroinicial063 = florenca.t063cepbairro.codbairro063" +
" and" +
" florenca.t064ceplogradouro.codbairrofinal063 = florenca.t063cepbairro.codbairro063" +
" and " +
" florenca.t063cepbairro.codcidade062 = florenca.t062cepcidade.codcidade062" +
" and" +
" florenca.t062cepcidade.codestado061 = florenca.t061cepuf.codestado061" +
" and" +
" florenca.t062cepcidade.codpais060 = florenca.t060ceppais.codpais060" +
" and" +
" florenca.t061cepuf.codpais060 = florenca.t060ceppais.codpais060";
Query queryObject = s.createQuery(queryString);
//queryObject.setParameter(0, "81930646");
List<?> resultList = queryObject.list();
t.commit();
System.out.println("Vai .... "+ resultList.toString());
//} catch (Exception e) {
// System.out.println("Caiu no catch");
t.rollback();
//}
s.close();
}
}
E está dando esse erro :
INFO: Not binding factory to JNDI, no JNDI name configured
Vai entrar no try
Exception in thread "main" org.hibernate.hql.ast.QuerySyntaxException: t064ceplogradouro is not mapped [ select florenca.t064ceplogradouro.codlogradouro064 as CodLogradouro, florenca.t064ceplogradouro.tipo064 as Tipologradouro, florenca.t064ceplogradouro.nome064 as logradouro, florenca.t063cepbairro.codbairro063 as CodBairro, florenca.t063cepbairro.nome063 as bairro, florenca.t062cepcidade.codcidade062 as codCidade, florenca.t062cepcidade.nome062 as cidade, florenca.t061cepuf.codestado061 as codUF, florenca.t061cepuf.nome061 as UF, florenca.t060ceppais.codpais060 as codPais, florenca.t060ceppais.nome060 as Pais from t064ceplogradouro, t063cepbairro, t062cepcidade, t061cepuf, t060ceppais where numcep064 = '81930340' and florenca.t064ceplogradouro.codcidade062 = florenca.t062cepcidade.codcidade062 and florenca.t064ceplogradouro.codbairroinicial063 = florenca.t063cepbairro.codbairro063 and florenca.t064ceplogradouro.codbairrofinal063 = florenca.t063cepbairro.codbairro063 and florenca.t063cepbairro.codcidade062 = florenca.t062cepcidade.codcidade062 and florenca.t062cepcidade.codestado061 = florenca.t061cepuf.codestado061 and florenca.t062cepcidade.codpais060 = florenca.t060ceppais.codpais060 and florenca.t061cepuf.codpais060 = florenca.t060ceppais.codpais060]
at org.hibernate.hql.ast.util.SessionFactoryHelper.requireClassPersister(SessionFactoryHelper.java:181)
at org.hibernate.hql.ast.tree.FromElementFactory.addFromElement(FromElementFactory.java:110)
at org.hibernate.hql.ast.tree.FromClause.addFromElement(FromClause.java:93)
at org.hibernate.hql.ast.HqlSqlWalker.createFromElement(HqlSqlWalker.java:277)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.fromElement(HqlSqlBaseWalker.java:3056)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.fromElementList(HqlSqlBaseWalker.java:2945)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.fromClause(HqlSqlBaseWalker.java:688)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:544)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.selectStatement(HqlSqlBaseWalker.java:281)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:229)
at org.hibernate.hql.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:251)
at org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:183)
at org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:134)
at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:101)
at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:80)
at org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:94)
at org.hibernate.impl.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:156)
at org.hibernate.impl.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:135)
at org.hibernate.impl.SessionImpl.createQuery(SessionImpl.java:1650)
at br.com.esfera.persistence.HibernateTeste.main(HibernateTeste.java:57)
Só que estou mapeando a tabela (t064ceplogradouro )sim … olhem :
package br.com.esfera.model.cadastro.vo;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToOne;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;
import br.com.esfera.model.vo.VO;
/**
* Display Administração - T064
* @author João Ricardo.
*/
@Entity
@Table(name="t064ceplogradouro", schema="florenca")
public class CepLogradouroVO extends VO {
@Transient
private static final long serialVersionUID = -1225292023711555680L;
@Id
@SequenceGenerator(name="id", sequenceName="florenca.seq_t064")
@GeneratedValue(strategy=GenerationType.AUTO, generator="id")
@Column(name="codlogradouro064", nullable=false)
private Integer codLogradouro;
/*
@OneToOne(fetch=FetchType.LAZY)
@PrimaryKeyJoinColumn
private CepCidadeVO cidade;
@OneToOne(fetch=FetchType.LAZY)
@PrimaryKeyJoinColumn
private CepBairroVO bairroInicial;
@OneToOne(fetch=FetchType.LAZY)
@PrimaryKeyJoinColumn
private CepBairroVO bairroFinal;
*/
@Column(name="codcidade062", nullable = false)
private Integer codCidade;
@Column(name="codbairroinicial063")
private Integer codBairroInicial;
@Column(name="codbairrofinal063")
private Integer codBairroFinal;
@Column(name="nome064",length=70, nullable=false)
private String nome;
@Column(name="numcep064",length=8, nullable=false)
private String numeroCep;
@Column(name="complemento064",length=50)
private String complemento;
@Column(name="tipo064", length=30)
private String tipo;
@Column(name="logdtacriacao")
@Temporal(TemporalType.TIMESTAMP)
private Date logDtaCriacao;
@Column(name="logdtaedicao")
@Temporal(TemporalType.TIMESTAMP)
private Date logDtaEdicao;
@Column(name="logUsuario", length=20, nullable=false)
private String logUsuario;
public Integer getCodLogradouro() {
return codLogradouro;
}
public void setCodLogradouro(Integer codLogradouro) {
this.codLogradouro = codLogradouro;
}
public Integer getCodCidade() {
return codCidade;
}
public void setCodCidade(Integer codCidade) {
this.codCidade = codCidade;
}
public Integer getCodBairroInicial() {
return codBairroInicial;
}
public void setCodBairroInicial(Integer codBairroInicial) {
this.codBairroInicial = codBairroInicial;
}
public Integer getCodBairroFinal() {
return codBairroFinal;
}
public void setCodBairroFinal(Integer codBairroFinal) {
this.codBairroFinal = codBairroFinal;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getNumeroCep() {
return numeroCep;
}
public void setNumeroCep(String numeroCep) {
this.numeroCep = numeroCep;
}
public String getComplemento() {
return complemento;
}
public void setComplemento(String complemento) {
this.complemento = complemento;
}
public String getTipo() {
return tipo;
}
public void setTipo(String tipo) {
this.tipo = tipo;
}
public Date getLogDtaCriacao() {
return logDtaCriacao;
}
public void setLogDtaCriacao(Date logDtaCriacao) {
this.logDtaCriacao = logDtaCriacao;
}
public Date getLogDtaEdicao() {
return logDtaEdicao;
}
public void setLogDtaEdicao(Date logDtaEdicao) {
this.logDtaEdicao = logDtaEdicao;
}
public String getLogUsuario() {
return logUsuario;
}
public void setLogUsuario(String logUsuario) {
this.logUsuario = logUsuario;
}
}
Por favor … a
lguém me ajude …
Obrigado !!

