Erro no mapeamento do hibernate

Bom gente estou estudando o hibernate pelas video aulas do neri, e não estou conseguindo executar um aplicativo com o framework hibernate. Sempre que eu rodo o simples aplicativo, o eclipse me fala que tem um erro no mapeamento da classe aluno, mas já vi e revi o xml, e não encontro nenhum erro, será que alguém pode me ajudar a encontrar?

aluno bean:

public class Aluno 
{

	private int alu_codigo;
	private String nome;
	private String cidade;
	private String fone;
	private String curso;
	
	public Aluno()
	{
		
	}

	public int getAlu_codigo() {
		return alu_codigo;
	}

	public void setAlu_codigo(int alu_codigo) {
		this.alu_codigo = alu_codigo;
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getCidade() {
		return cidade;
	}

	public void setCidade(String cidade) {
		this.cidade = cidade;
	}

	public String getFone() {
		return fone;
	}

	public void setFone(String fone) {
		this.fone = fone;
	}

	public String getCurso() {
		return curso;
	}

	public void setCurso(String curso) {
		this.curso = curso;
	}

	
	
}

aluno mapping:

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

[/code]

Configuração do hibernate:

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

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

<hibernate-configuration>
  <session-factory>
    <property name="hibernate.connection.driver_class">
      com.mysql.jdbc.Driver
    </property>
    <property name="hibernate.connection.url">
      jdbc:mysql://localhost/javaHibernate
    </property>
    <property name="hibernate.connection.username">
      root
    </property>
    <property name="hibernate.connection.password>
      25quadrado
    </property>
    <property name="hibernate.dialect">
      org.hibernate.dialect.MySQLDialect
    </property>
    <mapping resource="aluno.hbn.xml" />
  </session-factory>
</hibernate-configuration>

e a classe principal do projetinho:


import javax.swing.JOptionPane;

import org.hibernate.*;
import org.hibernate.cfg.*;

public class GravaAluno {

	public static void main(String[] args) 
	{
		
		try
		{
			//inicia uma configuração nova para uma sessão
			SessionFactory fabrica = new Configuration().configure().buildSessionFactory();
			//abre uma nova sessão com o banco de dados, ou seja, se conecta com o banco de dados
			Session sessao = fabrica.openSession();
			Aluno aluno = new Aluno();
			aluno.setAlu_codigo(1);
			aluno.setNome("Rafael dos Santos Oliveira");
			aluno.setCurso("informatica");
			aluno.setFone("258899665");
			aluno.setCidade("Rio de Janeiro");
			/*inicia uma transsação, ou seja, ele vai executar tudo isso acima
			 * */
			Transaction tx_aluno = sessao.beginTransaction();
			sessao.save(aluno);
			//salva "fisicamente no banco de dados"
			tx_aluno.commit();
			sessao.close();
		}
		catch(Exception e)
		{
			JOptionPane.showMessageDialog(null, "Erro na sessão!" + e);
		}

	}

}

Desde já muitíssimo grato :slight_smile:

Olá Mirrah, tdo bem?
pelo que eu vi aqui você não anotou a sua entidade com as anotações necessárias, vou dar um exemplo


@Entity(name="o nome da entidade no BD")
public class Aluno   
{  
    @ID @GeneratedValue //geradores de valores para PK, verifique na documentação do Hibernate para saber mais
    private int alu_codigo;  
    @Column() //Se vc quiser pode anotar com @Column para especificar a sua coluna olhe a documentação do Hibernate para saber mais
    private String nome;  
    private String cidade;  
    private String fone;  
    private String curso; 

espero ter ajudado

[]'s

[quote=Tenkara Kiddo]Olá Mirrah, tdo bem?
pelo que eu vi aqui você não anotou a sua entidade com as anotações necessárias, vou dar um exemplo


@Entity(name="o nome da entidade no BD")
public class Aluno   
{  
    @ID @GeneratedValue //geradores de valores para PK, verifique na documentação do Hibernate para saber mais
    private int alu_codigo;  
    @Column() //Se vc quiser pode anotar com @Column para especificar a sua coluna olhe a documentação do Hibernate para saber mais
    private String nome;  
    private String cidade;  
    private String fone;  
    private String curso; 

espero ter ajudado

[]'s[/quote]

Ela está mapeando por XML, as anotações são dispensáveis, neste caso…

Qual o erro que o eclipse acusa?

cara, não dá para eu ver isso agora mas em resumo fala que o o name do property não pode ter o ‘<’ ou alguma coisa parecida com isso

Vou dar uma olhada

<property name="hibernate.connection.password>  

esse trecho de código, está faltando um fechar aspas ao final da declaração da propriedade, assim

<property name="hibernate.connection.password">  

Verifica ai se é isso.

O erro está na falta das aspas para fechar o name da property password

//aqui, vê????
<property name="hibernate.connection.password> 
//é só fechar que roda

[quote=drsmachado][quote=Tenkara Kiddo]Olá Mirrah, tdo bem?
pelo que eu vi aqui você não anotou a sua entidade com as anotações necessárias, vou dar um exemplo


@Entity(name="o nome da entidade no BD")
public class Aluno   
{  
    @ID @GeneratedValue //geradores de valores para PK, verifique na documentação do Hibernate para saber mais
    private int alu_codigo;  
    @Column() //Se vc quiser pode anotar com @Column para especificar a sua coluna olhe a documentação do Hibernate para saber mais
    private String nome;  
    private String cidade;  
    private String fone;  
    private String curso; 

espero ter ajudado

[]'s[/quote]

Ela está mapeando por XML, as anotações são dispensáveis, neste caso…

Qual o erro que o eclipse acusa?[/quote]

legal cara eu não manjava, valeu

Eu ainda lembro as primeiras aulas de hibernate, tudo por xml…
Coisa do DEABO, pra quem não manja…
Com annotation, você perde um pouco do charme da coisa, masssssss, fica muito mais fácil…

Claro, é bem melhor conhecer os dois (no projeto anterior, aqui na empresa, tive que usar xml…)

pow gente, eu sabia que o annotations existia, mas não sabia que era tão facil assim

Comparado ao XML, é sim…
Confunde um pouco no começo, mas quando você aprende a usar e se acostuma…
É uma facilidade que só…

é que acaba centralizando as configurações, no caso das anotações com 50 classes de modelo as 50 classes tem anotações, no caso do XML acaba centralizando tudo.

Não acho que XML centralize, afinal, cada entity terá, ainda, um hbm.xml…

saquei, deve ser bem hardcore mesmo colocar tudo em um hbm.xml

No projeto anterior, apenas umas 100 entities…
São 100 hbm.xml…

bom gente, eu corrigi o erro de digitação, mas apareceu um outro erro:

será que tem alguma incompatibilidade com a tabela no banco de dados?

create table aluno( codigo int primary key, nome varchar(20), cidade varchar(20), telefone varchar(16), curso varchar(30) );

abraços a todos

O melhor é refazer o documento todo.
Os erros de parse são lançados quando o documento não está bem formatado, falta tag abrindo, fechando, sobre caractere, etc…

pow cara, enão estou começando a ficar meio confuso, pois na aula do neri, o documento que eu escrevi é uma copia escarrada do documento dele.

http://docs.jboss.org/hibernate/core/3.6/quickstart/en-US/html_single/

dá uma olhada ai e na parte 2 tem um zip dos tutoriais, qualquer dúvida posta ai ok.