Olá preciso enviar uma lista de um formulario, algo assim:
for(i=0;i<pedidos.length;i++) {
html+="<tr>";
html+=" <td width='40'>"+ pedidos[i].codigoProduto + "</td>";
html+=" <td width='50%'>" + pedidos[i].descricaoIten + "</td>";
html+=" <td>" + pedidos[i].blocagem + "</td>";
html+=" <td>" + pedidos[i].quantidadeEsperada + "</td>";
html+="<input type='hidden' name='pedidocompra["+i+"].codigoPedido' value='"+ pedidos[i].numeroPedido + "'>";
html+="<input type='hidden' name='pedidocompra["+i+"].codProd' value='"+ pedidos[i].codProd + "'>";
html+="<input type='hidden' name='pedidocompra["+i+"].unitario' value='"+ pedidos[i].unitario + "'>";
html+=" <td><input type='text' name=\"pedidocompra["+i+"].quantidadeRecebida\"></td>";
html+=" <td>" + pedidos[i].unitarioFormatado + "</td>";
html+=" <td>" + pedidos[i].total + "</td>";
html+="</tr>";
}
Na minha logic recebo assim essa lista:
@Parameter(create = true)
private List<PedidoCompra> pedidocompra;
@Remotable
public void upd(){
try {
for (PedidoCompra pedido : pedidocompra) {
new PedidoCompraDAO().updPedidos(pedido);
}
} catch (Exception e) {
e.printStackTrace();
}
}
A questão é, se eu chamo no form normal funciona porem me disponibiliza um arquivo para eu baixar, o que contornaria se usa-se pela chamada do prototype no evento onComplete, porem não vejo uma forma de passar mais de uma linha desse modo, como desabilitar esse download do arquivo que apenas me retorna {} em JSON ?.
Se eu trocar a action do meu form e retirar a anotação Remotable do logic
action="produtoupd.upd.logic"
Ele funciona mais redireciona para produtoup/upd.ok.jsp mas preciso ficar na mesma página e sem submeter.
Alguma sugestão?