Estoy tratando de devolver json de la acción mediante una llamada ajax en struts 2, pero siempre me lleva a la función de error . Aquí estoy tratando de tomar el tamaño del cartsize mediante una llamada ajax y quiero imprimir el tamaño del carrito cada vez que alguien hace clic en Agregar al carrito, pero siempre me lleva a error function
Aquí está mi llamada ajax
<script type="text/javascript"> function addProductToCart(productId) { $.ajax({ url: 'addProductToCart', method: "POST", data: {productId: productId}, success: function (data) { alert("In success"); $('#result').html(data.cartSize); alert(data.cartSize); }, error: function (jqXHR, exception) { console.log('Error occured!!'); alert("Error"); } }); } </script>Mi clase de acción solo el método addProduct
public String addProductToCart(){ System.out.println("Cart: " + productId); MenuServices item = new MenuServices(); if (sessionMap.get("Cart") == null) { HashMap<Integer, Menu> cart = new HashMap<>(); try { Menu product = item.fetchProduct(productId); cart.put(productId, product); getSessionMap().put("Cart", cart); } catch (Exception ex) { Logger.getLogger(ReservationAction.class.getName()).log(Level.SEVERE, null, ex); } } else { HashMap cart = (HashMap) sessionMap.get("Cart"); try { Menu product = item.fetchProduct(productId); cart.put(productId, product); getSessionMap().put("Cart", cart); } catch (Exception ex) { Logger.getLogger(ReservationAction.class.getName()).log(Level.SEVERE, null, ex); } } HashMap cart = (HashMap) sessionMap.get("Cart"); setCartSize(cart.size()); return ActionSupport.SUCCESS; }Struts.xml
<package name="base" namespace="/" extends="json-default"> <action name="addProductToCart" class="com.tablebooking.actions.ReservationAction" method = "addProductToCart"> <result type="json"> <param name="root">action</param> </result> </action> </package>