Ajuda enum + jpa2

Olá Pessoal!

Agradeço desde já quem puder me ajudar.

Estou com dificuldade de usar um enum.

Preciso passar esse tipo: TipoValidacaoFiliacao.CAD_FILIA … mais esta dando erro, dizendo que preciso criar uma constante a classe TipoValidacaoFiliacao.

Segue código abaixo.

enum:

[code]public enum TipoValidacaoFiliacao {

CAD_FILIA(1,"CAD_FILIA"),   
CAD_ASSOC(2,"CAD_ASSOC"),
ORIG_IP(3,"ORIG_IP"),
CAD_SRS(4,"CAD_SRS"),
VAL_INADIM(5,"VAL_INADIM");

private long id;   
private String descricao;
	
private TipoValidacaoFiliacao(long id, String descricao) {
	this.id = id;
	this.descricao = descricao;
}

public long getId() {
	return id;
}

public String getDescricao() {
	return descricao;
}	 
 
public static TipoValidacaoFiliacao parse(long id) {   
	TipoValidacaoFiliacao tipoValidacaoEnum = null;   
    for (TipoValidacaoFiliacao item : TipoValidacaoFiliacao.values()) {   
        if (item.getId() == id) {   
        	tipoValidacaoEnum = item;   
            break;   
        }   
    }   
    return tipoValidacaoEnum;   
}

@Override   
public String toString() {   
    return this.descricao;   
}   

}[/code]

mapeamentos:

[code]@Entity(name = “VALIDACAO_PROPOSTA_FILIACAO”)
@SequenceGenerator(allocationSize = 1, sequenceName = “SQ_VALIDACAO_PROPOSTA_FILIACAO”, name = “SQ_VALIDACAO_PROPOSTA_FILIACAO”)
public class ValidacaoPropostaFiliacao extends Domain {

private static final long serialVersionUID = 1L;

private TipoValidacaoFiliacao tipoValidacaoFiliacao;

private PropostaFiliacao propostaFiliacao;
private String passou;
private String observacao;

@Id
@Column(name = "ID", nullable = false)
@GeneratedValue(generator = "SQ_VALIDACAO_PROPOSTA_FILIACAO")
public Long getId() {
	return id;
}

public void setId(Long id) {
	this.id = id;
}

@Enumerated(EnumType.ORDINAL)
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "ID_TIPO_VALIDACAO", nullable = false)
public TipoValidacaoFiliacao getTipoValidacaoFiliacao() {
	return tipoValidacaoFiliacao;
}

public void setTipoValidacaoFiliacao(
		TipoValidacaoFiliacao tipoValidacaoFiliacao) {
	this.tipoValidacaoFiliacao = tipoValidacaoFiliacao;
}

@Column(name = "IDC_PASSOU_VALIDACAO", nullable = false, length = 1)
public String getPassou() {
	return passou;
}

public void setPassou(String passou) {
	this.passou = passou;
}

@Column(name = "DES_OBSERVACAO", nullable = false, length = 100)
public String getObservacao() {
	return observacao;
}

public void setObservacao(String observacao) {
	this.observacao = observacao;
}

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "ID_PROPOSTA_FILIACAO")
public PropostaFiliacao getPropostaFiliacao() {
	return propostaFiliacao;
}

public void setPropostaFiliacao(PropostaFiliacao propostaFiliacao) {
	this.propostaFiliacao = propostaFiliacao;
}

}

@Entity(name = “TIPO_VALIDACAO_FILIACAO”)
@SequenceGenerator(allocationSize = 1, sequenceName = “SQ_TIPO_VALIDACAO_FILIACAO”, name = “SQ_TIPO_VALIDACAO_FILIACAO”)
public class TipoValidacaoFiliacao extends Domain {

private static final long serialVersionUID = 1L;

private String codigo;
private String descricao;

@Id
@Column(name = "ID", nullable = false)
@GeneratedValue(generator = "SQ_TIPO_VALIDACAO_FILIACAO")
public Long getId() {
	return id;
}

public void setId(Long id) {
	this.id = id;
}

@Column(name = "COD_VALIDACAO", nullable = false, length = 10)
public String getCodigo() {
	return codigo;
}

public void setCodigo(String codigo) {
	this.codigo = codigo;
}

@Column(name = "DES_VALIDACAO", nullable = false, length = 100)
public String getDescricao() {
	return descricao;
}

public void setDescricao(String descricao) {
	this.descricao = descricao;
}

}
[/code]

insert:

[code]ValidacaoPropostaFiliacao validacao = new ValidacaoPropostaFiliacao();
validacao.setPassou(“N”);
validacao.setObservacao(null);
validacao.setTipoValidacaoFiliacao(TipoValidacaoFiliacao.CAD_FILIA); --erro aqui

[/code]

Tens uma class e uma enum com o mesmo nome.

Provavelmente queres usar a enum mas estás a usar a class.