Olá a todos!
Fiz um método que lê um retorno JSON, trata e tenta inserir os valores em um banco de dados.
Só que quando tento executar o método POST o sistema retorna o seguinte erro:
The server refused this request because the request entity is in a format not supported by the requested resource for the requested method.Meu método de inserção está da seguinte maneira:
@POST
@Path("/inserir")
@Consumes("application/json")
public void createPedido(String stringJson){
try {
JSONObject json = new JSONObject(stringJson);
JSONArray pedidoProduto = json.getJSONArray("pedidoProduto");
this.dispositivo = dispositivoDAO.find(json.getInt("idDispositivo"));
this.formaPagamento = formaPagamentoDAO.find(json.getInt("idFormaPagamento"));
this.pedido.setFormaPagamento(formaPagamento);
this.pedido.setDispositivo(dispositivo);
this.pedido.setTotal(json.getDouble("total"));
Date data = new Date();
this.pedido.setDataPedido(new java.sql.Date(data.getTime()));
for(int i = 0; i < pedidoProduto.length(); i++){
JSONObject j = pedidoProduto.getJSONObject(i);
produto = produtoDAO.find(j.getInt("idProduto"));
((ItemPedido) itemPedido).setValor(json.getDouble("valor"));
((ItemPedido) itemPedido).setQuantidade(j.getInt("quantidade"));
((ItemPedido) itemPedido).setIdProduto(this.produto);
((ItemPedido) itemPedido).setIdPedido(this.pedido);
}
this.pedido.setItensPedido(itemPedido);
} catch (JSONException e) {
e.printStackTrace();
}
pedidoDAO.beginTransaction();
pedidoDAO.save(this.pedido);
pedidoDAO.commitAndCloseTransaction();
}
{"pedidoProduto":[{"observacao":"android.widget.EditText@4267da70","nomeProduto":"X-Egg","valor":11.85,"quantidade":2,"idPedidoProduto":49,"idProduto":8},{"observacao":"android.widget.EditText@426d4260","nomeProduto":"Pepsi","valor":1.8,"quantidade":1,"idPedidoProduto":50,"idProduto":4}],"idFormaPagamento":1,"total":13.65,"idDispositivo":14}