Olá Pessoal,
Estou com o seguinte desafio:
Eu tenho uma classe asset que tem uma relação @ManyToOne com um classe location.
Ambas as classes possuem um atributo Date, isso representa o seguinte:
Um asset pertence a uma locacao, porem ele pode utilizar a data indivdual dele ou utilizar a data global da locacao.
Com isso há um bool useLocationDates que o usuario seta caso o usuario queira linkar a data dese asset a locação, dessa forma ao atualizar a data da locacao o asset tambem terá sua data atualizada.
Porem para a view, é interessante que isso seja invisível, traduzido nesse getter:
public Date getDate() {
if (useLocationDates && location != null)
return location.getDate(); //Date from location
else
return date; //Date from this object
}
- A questão:
Para a view não há problema utilizar EL ${asset.date}, já que esse utiliza o getter.
Porém como utilizo DataTables, estou utilizando AJAX para popular a table.
Só que o metodo serialize() nao utiliza os getters e sim o atributo. Logo o campo date vai retorna o atributo date independente do getter ser dinâmico.
Essa pergunta já foi respondida para o VRaptor 3, onde nesse tempo o XStream, inves do GSON, era utilizado para serializar JSON:
http://www.guj.com.br/java/281662-vraptor-serializar-tostring-dos-objetos-no-json
https://groups.google.com/forum/#!topic/caelum-vraptor-dev/DUZwxLDK_4w
Alguém teria alguma sugestão?