lucas, consegui resolver o problema. vou postar a solucao completa para que possa servir pra outras pessoas.
Ele serializava de um jeito e deserializava de outro colocando atributos no json como @class e @resolves-to, creio que por conta do hibernate.
Primeiro coloquei o CustomJSONSerialization para evitar circular reference ex. Como explicado aki:
http://www.wbotelhos.com.br/2010/08/26/vraptor-3-evitando-circularreferenceexception-do-xstream/
@Component
public class CustomJSONSerialization extends XStreamJSONSerialization {
public CustomJSONSerialization(HttpServletResponse response, TypeNameExtractor extractor,
ProxyInitializer initializer, XStreamBuilder builder) {
super(response, extractor, initializer, builder);
}
@Override
@SuppressWarnings("deprecation")
protected XStream getXStream() {
XStream xstream = super.getXStream();
xstream.registerConverter(new CollectionConverter(xstream.getMapper()) {
@Override
@SuppressWarnings("rawtypes")
public boolean canConvert(Class type) {
return Collection.class.isAssignableFrom(type);
}
});
return xstream;
}
}
depois crei o CustomXStreamBuilder
[code]
@PrototypeScoped
@Component
public class CustomXStreamBuilder extends XStreamBuilderImpl {
public CustomXStreamBuilder(XStreamConverters converters, TypeNameExtractor extractor) {
super(converters, extractor);
}
// delega o construtor
public XStream configure(XStream xstream) {
super.configure(xstream);
xstream.aliasSystemAttribute(null, "class");
xstream.aliasSystemAttribute(null, "resolves-to");
return xstream;
}
}[/code]
para tirar os attr adicionais, como explicado aki: https://groups.google.com/forum/#!topic/caelum-vraptor/dnm8j4-YmVw
entao criei uma classe que continha as outras duas que precisava.
algo como isso:
public class ObligationCancel {
private Task task;
private ObligationToPay obligationToPay;
public ObligationCancel() {
}
public ObligationCancel(Task task, ObligationToPay obligationToPay) {
this.task = task;
this.obligationToPay = obligationToPay;
}
....
UFAAAAA!
vem mais duvidas ai nos retornos de list rsrs
abrasss