[Resolvido] VRaptor - Post (jquery) + Controller = Null Pointer

5 respostas
d34d_d3v1l

Tentei resumir ali no títutlo,

mas eu faço um Post no jQuery enviando um DATA, o controller é acionado mas recebe null.
O wrapper que quero enviar possui:

private Icon icon;
	private List<String> tags;

no controller eu recebo:

public void save(IconTtagSuggestion dto){

O post estou fazendo assim:

$.ajax({
			type: 'POST',
			dataType: 'json',
			url: action,
			data: JSON.stringify({dto: data}),
			success: function(data){
				console.log("OK");
				console.log(data);
			}
		});

O resultado do JSON stringify é:

"dto":{"icon":"BUS","tags":["Carro","automóvel"]}}

Obrigado !!

5 Respostas

d34d_d3v1l

também tentei assim:

d34d_d3v1l

Também tentei:

"dto":
	{"icon":"LEAF"}, 
	{ 'tags[0]' : 'teste' } 
}

e assim:

{"dto": { "icon":"TEXT_SMALLER", 'tags[0]' : 'texto', 'tags[1]' : 'word' } }

:frowning:

Lucas_Cavalcanti

o certo seria fazer algo como:

$.ajax({
   //...
   data: {"dto.icon": "LEAF", "dto.tags[0]": 'teste'}
);

a regra é a mesma dos inputs… e vc não precisa passar um json serializado, passa os atributos assim que vai funcionar.

d34d_d3v1l

Então manin, o JSON ficou assim:

{ "dto.icon":"LEAF", 'dto.tags[0]' : 'natureza', 'dto.tags[1]' : 'teste', 'dto.tags[2]' : 'um' }

e continuo recebendo null no construtor :frowning:

d34d_d3v1l

Opa! o Rafael Guerreiro,

me ajudou aqui… Ao invés de montar a String do JSON eu apenas montei o objeto…
e deu tudo certo…

obrigado !!

Criado 20 de julho de 2013
Ultima resposta 22 de jul. de 2013
Respostas 5
Participantes 2