1 /** 2 * 3 */ 4 package org.apache.geronimo.samples.inventory.web; 5 6 import java.io.IOException; 7 8 import javax.servlet.ServletException; 9 import javax.servlet.http.HttpServlet; 10 import javax.servlet.http.HttpServletRequest; 11 import javax.servlet.http.HttpServletResponse; 12 13 import org.apache.geronimo.samples.inventory.exception.NotSufficientQuantityException; 14 import org.apache.geronimo.samples.inventory.services.InventoryManager; 15 16 17 public class IssueingServlet extends HttpServlet { 18 19 20 protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { 21 process(req,res); 22 } 23 24 protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { 25 doGet(req,res); 26 } 27 28 private void process(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException{ 29 String itemNo = req.getParameter("item_no"); 30 31 int quantity = 0; 32 try { 33 quantity = Integer.parseInt(req.getParameter("quantity")); 34 InventoryManager itemManager = new InventoryManager(); 35 itemManager.issueItem(itemNo,quantity); 36 37 getServletContext().getRequestDispatcher("/welcome.jsp").forward(req,res); 38 } catch (NumberFormatException e) { 39 e.printStackTrace(); 40 req.setAttribute("error","Invalid Number Format for Quantity"); 41 getServletContext().getRequestDispatcher("/jsp/error.jsp").forward(req,res); 42 } catch (NotSufficientQuantityException e) { 43 req.setAttribute("error","Not Sufficient Qunatity to Issue Items"); 44 getServletContext().getRequestDispatcher("/jsp/error.jsp").forward(req,res); 45 } 46 } 47 48 49 }