Restfulie server (vRaptor) recebe parametro nulo

Pessoal estou implementando um REST com Vraptor. Inclusive utilizei a apostilado da Caelum como base (http://www.caelum.com.br/apostila-vraptor-hibernate/rest/#11-1-o-que-e-rest).

Meu Metodo Controller:

@Put @Path("alterar/{produto.id}") @Consumes({ "application/x-www-form-urlencoded", "application/json", "application/xml" }) public void alterar(Produto produto){ System.out.println("Produto Id: " +produto.getId()); System.out.println("Produto Descricao: " +produto.getDescricao()); System.out.println("produto alterado !!"); result.use(status()).ok(); }

xml submetido:

<produto>
  <descricao>Produto Qualquer</descricao>
</produto>

O problema é que estou mandando um xml com o id do produto na url e ele não está populando o id do meu produto. Só funciona se eu mandar o xml com o id do produto. Apesar de mandar na url ainda preciso mandar o id pelo xml ?

O deserializador de xml não pega os parâmetros do path mesmo =/

usando VRaptor 3 ou 4?

Realmente, quando faco a requisicao usando contentType “application/x-www-form-urlencoded” funciona na boa.
A versão que estou usando é a 3.1.3.

Abre uma issue por favor explicando esse problema?

Tá certo Lucas, vou abrir.

Vlw pela ajuda !!

Lucas,

por mais que esteja populando o objeto, é possivel eu recuperar de alguma forma o id passado pela url ?

sim, se vc receber o HttpServletRequest no construtor ou no método e fazer request.getParameter(“nome-que-vc-colocou-no-path”)