Json Vazio Vraptor

2 respostas
M

Pessoal, estou com um problema ao gerar o JSon no vraptor
Ele gera o Json em branco, não entendo o porque, quando uso o Gson do Google ele gera normalmente.

o resultado JSON fica assim.
{“requisicaoUsuario”: {}}

abaixo segue as classes que estou usando para gerar.

public class RequisicaoUsuario {
	
	private RequisicaoUsuarioVo requisicaoUsuarioVo;
	private List<UrlXPalavrasChave> listaUrlXPalavrasChave;
	
	public RequisicaoUsuario(){};
	
	public RequisicaoUsuario(String termo, String termoFormatoGoogle, String formato, int tipoRequisicao, int inicioResultadoBusca){
		setRequisicaoUsuarioVo(new RequisicaoUsuarioVo(termo, termoFormatoGoogle, formato, tipoRequisicao, inicioResultadoBusca));
	}....
public class RequisicaoUsuarioVo {
	
	private int tipoRequesicao;														//tipo de requisição do usuário
	private String formatoPesquisaRequisicao;										//formato que o usuario deseja que seja feita a pesquisa (Homer Bart)
	private String palavrasChaveRequisicao;											//palavras chaves digitadas pelo usuario
	private int inicioResultadoBusca;
	private String palavrasChaveRequisicaoFormatoGoogle;							//Homer -Bart
	
	public RequisicaoUsuarioVo(){}
	
        public RequisicaoUsuarioVo (String palavrasChaveRequisicao, String palavrasChaveRequisicaoFormatoGoogle, String formatoPesquisaRequisicao, int tipoRequisicao, int inicioResultadoBusca) {
		this.palavrasChaveRequisicao = palavrasChaveRequisicao;
		this.palavrasChaveRequisicaoFormatoGoogle = palavrasChaveRequisicaoFormatoGoogle;
		this.formatoPesquisaRequisicao = formatoPesquisaRequisicao;
		this.tipoRequesicao = tipoRequisicao;
		this.inicioResultadoBusca = inicioResultadoBusca;
	}....

public class UrlXPalavrasChave {
	
	private String url;
	private HashMap<String, PalavraVo> palavrasChave;
	private boolean processadoComSucesso;
	
	public UrlXPalavrasChave(){}
	
	public UrlXPalavrasChave (String url, HashMap<String, PalavraVo> palavrasChave, boolean processadoComSucesso){
		this.url = url;
		this.palavrasChave = palavrasChave;
		this.processadoComSucesso = processadoComSucesso;
	}....

public class PalavraVo {
	
	private String palavra;
	private int numeroDeOcorrencias;
	private double frequenciaRelativa;
	private boolean palavraChaveDoUsuario;

bom todas estas classes tem getters and setters.
não sei o que ocorre… abaixo segue o codigo do meu controller.

@Get @Path("/busca/{id}")
	public void recebeRequisicao(String id) {
		
		Busca busca = new Busca();
		RequisicaoUsuario requisicaoUsuario = busca.executarBusca("Santos Futebol Clube");
	
		this.result.use(json()).from(requisicaoUsuario).serialize();
		
	}

vlw desde já abs…

2 Respostas

Lucas_Cavalcanti

o vraptor só serializa os atributos simples por padrão (string, numeros e datas).

tenta usar o recursive:

this.result.use(json()).from(requisicaoUsuario).recursive().serialize();

se der problema, tenta dar includes nas propriedades que vc precisa.

M

Vlw cara funcionou…

abs

Criado 31 de outubro de 2011
Ultima resposta 2 de nov. de 2011
Respostas 2
Participantes 2