@Path("/inserisciCarrello") @GET @Produces("application/json") public String inserisciCarrello( @QueryParam("codProd") String codProd, @QueryParam("qta") String qta) throws ProdottoInesistente { // MagazzinoMock mag=new MagazzinoMock(); try { mg = new DAOMagazzino(); } catch (ClassNotFoundException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } Gson gson = new Gson(); String ris = null; Prodotto prod = null; ProdottoOrdinato po = null; boolean trovato = false; ArrayList<ProdottoOrdinato> carrello = (ArrayList<ProdottoOrdinato>) request.getSession().getAttribute("carrello"); if (carrello == null) { carrello = new ArrayList<ProdottoOrdinato>(); // Gson gson = new Gson(); // result = gson.toJson(carrello); // System.out.println(result); // return result; } for (int i = 0; i < carrello.size() && trovato == false; i++) { if (carrello.get(i).getCodiceProdotto().equalsIgnoreCase(codProd)) { int qtatotale = carrello.get(i).getQtaOrdinata() + Integer.valueOf(qta); carrello.get(i).setQtaOrdinata(qtatotale); trovato = true; } } if (trovato == false) { try { prod = mg.readProdotto(codProd); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } if (prod != null) { po = new ProdottoOrdinato(codProd, Integer.parseInt(qta), 0, prod.getPrezzo(), 21); // po=new ProdottoOrdinato(codProd, Integer.parseInt(qta), 0, prod.getPrezzo(), // 21,prod.getNome()); po.setNomeProdotto(prod.getNome()); carrello.add(po); ris = gson.toJson(po); } } request.getSession().setAttribute("carrello", carrello); System.out.println(ris); return "[" + ris + "]"; }