Vraptor Results.json() com listas encadeadas

3 respostas
B

Estou com um problema em gerar um Json de um objeto.
O que acontece é que o objeto tem uma lista de outro objeto, e ao gerar o json o vraptor está se perdendo.
Como posso resolver isso?

@Entity
public class Modulo implements Serializable{
	
	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	private Integer idModulo;
	
	private String titulo;
	
	@OneToMany(mappedBy = "modulo", targetEntity = Aplicacao.class, fetch = FetchType.LAZY)
	private List<Aplicacao> listAplicacao;
	
       // GET E SET 
}
@Resource
public class ModuloController {
	@Path("ws-modulo/list/{perfil.idPerfil}")
	public void list(Perfil perfil){

		List<Modulo> listModulo = moduloDao.listModuloWs(perfil);
		result.use(Results.json()).from(listModulo).recursive().serialize();	
	
	}
}

3 Respostas

B

A resposta do json está vindo:

{"modulos": [
  {
    "idModulo": 12,
    "titulo": "Modulo",
    "listAplicacao": [
      false,
      {
        "@class": "modulo"
Lucas_Cavalcanti

http://www.wbotelhos.com.br/2010/08/26/vraptor-3-evitando-circularreferenceexception-do-xstream/

dá uma olhada nesse post.

B

Não conseguei resolver o problema do recursive mas consegui listar os modulos sem a lista de aplicações ja foi o bastante para minha aplicação

@Resource  
    public class ModuloController {  
        @Path("ws-modulo/list/{perfil.idPerfil}")  
        public void list(Perfil perfil){  
      
           List&lt;Modulo&gt; listModulo = moduloDao.listModuloWs(perfil);  
           result.use(Results.json()).from(listModulo).serialize(); 
          
        }  
    }
Criado 18 de maio de 2012
Ultima resposta 23 de mai. de 2012
Respostas 3
Participantes 2