Ignorar uma propriedade Hibernate anotations

2 respostas
Deluxe

Pessoal
to com um problema

tenho minha classe mapeada

@OneToOne(mappedBy = "assinatura", fetch = FetchType.LAZY, optional = true)
	@Cascade(value = { CascadeType.ALL, CascadeType.DELETE_ORPHAN })
	private DocumentoPagamento docPagamento;

	@OneToMany(mappedBy = "assinatura", fetch = FetchType.LAZY)
	@Cascade(value = { CascadeType.ALL, CascadeType.DELETE_ORPHAN })
	private Set<ProdutoAssinatura> produtos;

	@OneToOne(mappedBy = "assinatura", fetch = FetchType.LAZY, optional = true)
	@Cascade(value = { CascadeType.SAVE_UPDATE })
	private Credito movimentacaoCredito;
	
	private boolean permissaoLiquidar = true;

perceba-se que a ultima propriedade (permissaoLiquidar) não está mapeada
quando o hibernate faz o select nessa classe, ele assume que essa propriedade faz parte da tabela onde está sendo feito o select

e o erro vem

ORA-00904: "ASSINATURA0_"."PERMISSAOLIQUIDAR": invalid identifier

como faz pra ignorar esse elemento ?

vlw

2 Respostas

Lavieri
@OneToOne(mappedBy = "assinatura", fetch = FetchType.LAZY, optional = true)
	@Cascade(value = { CascadeType.ALL, CascadeType.DELETE_ORPHAN })
	private DocumentoPagamento docPagamento;

	@OneToMany(mappedBy = "assinatura", fetch = FetchType.LAZY)
	@Cascade(value = { CascadeType.ALL, CascadeType.DELETE_ORPHAN })
	private Set<ProdutoAssinatura> produtos;

	@OneToOne(mappedBy = "assinatura", fetch = FetchType.LAZY, optional = true)
	@Cascade(value = { CascadeType.SAVE_UPDATE })
	private Credito movimentacaoCredito;
	
	@Transient // <=] assim vc fala pro hibernate que isso não faz parte da tabela
	private boolean permissaoLiquidar = true;
Deluxe

vlw cara
era isso mesmo

Criado 14 de outubro de 2009
Ultima resposta 14 de out. de 2009
Respostas 2
Participantes 2