Erro ao usar o JPA[Resolvido]

Boa noite pessoal, estou com um problema para fazer uma inserção de dados via hibernate.
Pelo log ele esta gerando o código SQL com um campo errado, este campo é um campo de relacionamento, gostaria que me ajudassem a solucionar este problema.

Segue o codigo:
Classe Pesquisa

package br.com.JPA.model;

import java.util.List;

import javax.persistence.CascadeType;
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.JoinColumn;
import javax.persistence.OneToMany;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;


@Entity
@Table(name="tb_pesquisa")

public class Pesquisa {
	@Id
	@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="seq_id_pesq")
	@SequenceGenerator(name="seq_id_pesq", sequenceName="seq_id_pesq", allocationSize=1)
	@Column(name="id_pesq")
	private long id;
	@Column(name="pergunta_pesq")
	private String pergunta;
	@Column(name="descricao_pesq")
	private String descricao;
	@OneToMany(fetch=FetchType.EAGER, cascade=CascadeType.PERSIST)
	//@JoinColumn(name="id_pesq")
	private List<Opcao> opcoes;
	
	public long getId() {
		return id;
	}
	public void setId(long id) {
		this.id = id;
	}
	public String getPergunta() {
		return pergunta;
	}
	public void setPergunta(String pergunta) {
		this.pergunta = pergunta;
	}
	public String getDescricao() {
		return descricao;
	}
	public void setDescricao(String descricao) {
		this.descricao = descricao;
	}
	public List<Opcao> getOpcoes() {
		return opcoes;
	}
	public void setOpcoes(List<Opcao> opcoes) {
		this.opcoes = opcoes;
	}
	
	
}

Classe Opcao

[code]package br.com.JPA.model;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.ManyToOne;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

@Entity
@Table(name=“tb_opcao”)
public class Opcao {

@Id
@SequenceGenerator(name="seq_id_opcao", sequenceName="seq_id_opcao", allocationSize=1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seq_id_opcao")
@Column(name="id_opcao")
private long id;
@Column(name="descricao_opcao")
private String descricao;
@ManyToOne
private Pesquisa pesquisa;

public Opcao(){
	
}

public Opcao(String descricao){
	this.descricao = descricao;
}

/**
 * @return the id
 */
public long getId() {
	return id;
}
/**
 * @param id the id to set
 */
public void setId(long id) {
	this.id = id;
}
/**
 * @return the descricao
 */
public String getDescricao() {
	return descricao;
}
/**
 * @param descricao the descricao to set
 */
public void setDescricao(String descricao) {
	this.descricao = descricao;
}

public Pesquisa getPesquisa() {
	return pesquisa;
}

public void setPesquisa(Pesquisa pesquisa) {
	this.pesquisa = pesquisa;
}

}
[/code]

e este é o código SQL gerado…

Hibernate: select nextval (‘seq_id_pesq’)
Hibernate: select nextval (‘seq_id_opcao’)
Hibernate: select nextval (‘seq_id_opcao’)
Hibernate: select nextval (‘seq_id_opcao’)
Hibernate: insert into tb_pesquisa (descricao_pesq, pergunta_pesq, id_pesq) values (?, ?, ?)
Hibernate: insert into tb_opcao (descricao_opcao, pesquisa_id_pesq, id_opcao) values (?, ?, ?)
Hibernate: insert into tb_opcao (descricao_opcao, pesquisa_id_pesq, id_opcao) values (?, ?, ?)
Hibernate: insert into tb_opcao (descricao_opcao, pesquisa_id_pesq, id_opcao) values (?, ?, ?)

o campo “pesquisa_id_pesq” não existe, na verdade ele é “id_pesq” no banco de dados, mas o hibernate não deveria criar como “id_pesq” uma vez que eu usei a anotação @JoinColumn(name=“id_pesq”)?

Obrigado, pessoal

Boa tarde, pessoal.
Preciso da ajuda de vocês…

Pessoal me ajudem…

Você deve mapear a propriedade pesquisa dentro da classe Opcao com @JoinColumn, não na classe Pesquisa. Afinal, a classe Opcao que faz referencia a tabela tb_opcao.

Valeu Guilherme, era isso msm.

Obrigado.