Exception ao gerar tabelas

7 respostas
M

Galera nao to conseguindo gerar tabelas com relacionamento OneToMany

Seguinte to fazendo uma locadora e No cadastro de Cliente que colocar um campos para os dependentes

mais ta dando erro e nao to conseguindo gerar me ajudem ai por favor!

Cliente.java

@Entity
public class Cliente implements java.io.Serializable {

	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
//	@Column(name="id_cliente")
	private Long id;
	
	@Column(nullable=false, length=40,
			insertable=true, updatable=true)
	private String nome;
	
	@Column(unique=true, nullable=false,
			insertable=true, updatable=true)
	private String cpf;
	
	@Column(nullable=false)

	/* Mapeamento para relacionamentos*/
	
	@OneToOne//(cascade=CascadeType.PERSIST, fetch=FetchType.EAGER)
	private Funcionario funcionario;
	
	@OneToMany(mappedBy="dependente")
	private List<Dependente> dependentes;
	
	// Constructors

}
Dependente.java

@Entity
public class Dependente implements java.io.Serializable {

	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	private Long id;

	@ManyToOne
	private Cliente cliente; 
}
Log 
log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" org.hibernate.AnnotationException: mappedBy reference an unknown target entity property: org.mytech.beans.Dependente.dependente in org.mytech.beans.Cliente.dependentes
	at org.hibernate.cfg.annotations.CollectionBinder.bindStarToManySecondPass(CollectionBinder.java:543)
	at org.hibernate.cfg.annotations.CollectionBinder$1.secondPass(CollectionBinder.java:508)
	at org.hibernate.cfg.CollectionSecondPass.doSecondPass(CollectionSecondPass.java:43)
	at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1127)
	at org.hibernate.cfg.AnnotationConfiguration.secondPassCompile(AnnotationConfiguration.java:296)
	at org.hibernate.cfg.Configuration.generateDropSchemaScript(Configuration.java:756)
	at org.hibernate.tool.hbm2ddl.SchemaExport.<init>(SchemaExport.java:93)
	at org.hibernate.tool.hbm2ddl.SchemaExport.<init>(SchemaExport.java:61)
	at org.mytech.daos.GeraBanco.main(GeraBanco.java:12)

Outra coisa depois que eu coloquei o vraptor o meu log nao mostra mais nada sobre o hibernate so sobre o vraptor.!!!!

7 Respostas

fiaux

Você estar usando interface para Cliente? Tem que dizer a classe concreta, em targetEntity. Estude o link http://www.hibernate.org/hib_docs/annotations/reference/en/html/

M

Desculpa sou novo em hibernate e nao entendi o que vc quer dizer olha as classes Cliente e Dependentes estao com informacoes omitidas, seguem modelo POJO e estou usando o Vraptor e tenho uma classe que gera as tabelas.

fiaux

Estude o link, lá explica tudo para fazer esses relacionamentos com annotations.

M

Acho que que devo ser muito burro mesmo pq nao conseguir fazer nem estudando o link que vc passou

bom meu ingles tambem e fraquinho fraquinho mais nao to conseguindo nao

ai me diz qual o erro talvez eu tenha mais facilidade de resolver

M

ai alguem me ajuda ai

B

Olha so, esse seu mapeamento ta errado.

@OneToMany(mappedBy="dependente")

Pelo o que eu me lembro, no mappedBy vc irá colocar qual é o atributo que esta fazendo o mapeamento da associação, no caso é o atributo cliente na classe Dependente…

Da uma lida nesse link aki q tem varios exemplos e otimas explicações (em ingles)


O segundo link é so sobre associações, excelente.

Qualquer coisa, hj quando eu chegar em casa eu te passo um exemplo completo.

VLW

M

Ai valeu mesmo acho que funcionou mais se não for torrar a paciencia de mais manda uns exemplo ai [email removido]

Criado 30 de julho de 2008
Ultima resposta 31 de jul. de 2008
Respostas 7
Participantes 3