Erros no hibernate

Boa tarde pessoal,

já postei várias dúvidas aqui e até agora ninguém consegui me ajudar. Espero que desta vez alguém me ajude.

Estou usando hibernate + JSF e simplemente faço um select * from para aperecer em um grid, coisa simples. Só que por algum motivo, o hibernate não consegue identificar os campos.

Minha classe está assim

public class Urgencia implements java.io.Serializable {

 private int idUrgencia;

Meu hbm está assim:

E tomo este erro: Caused by: org.postgresql.util.PSQLException: ERRO: coluna urgencia0_.idurgencia não existe
Position: 8

De onde ele tirou esse urgencia0_.idurgencia ?

Tá difícil de trabalhar com esse framework, a partir da 4.0 ficou muito bugado.

Um abraço agradeço a ajuda

Olá Gustavo, porquê não usa annotations? É muito mais prático.

Você declarou sua entidade no arquivo hibernate.cfg.xml?

Olá amigo

olha meu hibernate.cfg

org.hibernate.dialect.PostgreSQLDialect org.postgresql.Driver jdbc:postgresql://localhost:5432/dbsiap postgres gfCquake7 true true thread

E tem outro detalhe muito estranho, só consegui usar o wizard de engenharia reversa do hibernate depois que colocquei as minhas tabelas começando com caracter minusculo. Você falou em usar annotations: Como assim?

Gustavo

Usar annotations no seu caso está fora de questão, seu sistema está grande já pelo que vi nas suas tabelas.

Provavelmente você também verificou no banco se o campo existe.

Outras tabelas funcionam normalmente?

Até ja refiz tudo aqui usando annotations,

a tabela existe, o campo existe, mas por exemplo o campo no banco de dados se chama idUsuario, no hibernate tudo está mapeado idUsuario, na definicao da classe o campo está idUsuario, mas qdo executo os seguintes linhas do método da classe:

Session session = HibernateUtil.getSessionFactory().openSession();
tx = session.beginTransaction();
String sql = “SELECT u FROM Urgencia u”;
Query query = session.createQuery(sql);
urgencia = (Urgencia) query.uniqueResult();

eu tomo o erro: Caused by: org.postgresql.util.PSQLException: ERRO: coluna urgencia0_.idurgencia não existe.

Até mesmo usando o HQL editor eu tomo esse erro.

Gustavo

Gustavo, acho que o Postgres é case sensitive, experimente trocar o nome da tabela no banco de dados para idUrgencia, ou faça o inverso, coloque idurgencia no mapeamento do Hibernate.

Eu faço o mapeamento de ids desta forma:

<id name="idProduto" column="ID_PRODUTO">
			<generator class="sequence">
				<param name="sequence">SQ_PRODUTO</param>
			</generator>
</id>

Outra coisa, tem certeza que o nome da sua coluna no banco de dados (não na classe) é idUrgencia e não id_urgencia?

Boa tarde à todos,

fiz o seguinte, gerei o banco no postgressql com todos os caracteres em minúsculo, depois usando o wizard do netbeans gerei novamento os POJOS. Simplesmente funcionou, vai entender

Obrigado pela ajuda

O Postgres é case sensitive, por isso não funcionou.