rendered paste bodypackage pl.polsl.java.lab4.BikeShopWeb.servlets;import java.io.IOException;import java.io.PrintWriter;import java.util.logging.Level;import java.util.logging.Logger;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import pl.polsl.java.lab4.BikeShopWeb.model.*;import pl.polsl.java.lab4.BikeShopWeb.model.Bike.BikeSize;/** * * @author Michal Dydak */@WebServlet(name = "AddBike", urlPatterns = {"/AddBike"})public class AddBike extends HttpServlet { /** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods. * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); try { String color = request.getParameter("bikeColor"); String size = request.getParameter("bikeSize"); BikeSize bikeSize = Enum.valueOf(BikeSize.class, size); String charPrice = request.getParameter("bikePrice"); float price = Float.parseFloat(charPrice); Bike bike = new Bike(bikeSize, price, color); Shop shop = new Shop(); try { shop.readBikes(); } catch (ClassNotFoundException ex) { Logger.getLogger(AddBike.class.getName()).log(Level.SEVERE, null, ex); } shop.addBike(bike); shop.saveBikes(); out.println("<html>"); out.println("<head>"); out.println("<title>Servlet AddGame</title>"); out.println("</head>"); out.println("<body>"); //if there is no bike to print if (shop.isAnyBike()) { out.println("<h1><font color=blue size=4>There is nothing to show</font></h1>"); } else { out.println("<h1 align=center><font color=blue size=5>List of bikes</font></h1></br></br>"); out.println("<table align=center border=1 cellpadding=10 ><tr><th align=center width=150>ID</th><th align=center width=150>Color</th><th align=center width=150>Size</th><th align=center width=150>Price</th></tr></table>"); int i = 1; for (Bike anotherBike : shop.getList()) { out.println("<table align=center border=1 cellpadding=10 frame=above><tr><td align=center width=150>" + i++ + "</td><td align=center width=150>" + anotherBike.getColor() + "</td><td align=center width=150>" + anotherBike.getSize() + "</td><td align=center width=150>" + anotherBike.getPrice() + "</td></tr>"); } out.println("</table>"); } out.println("<tr align=center><td ><input type=button value=Back onclick=window.history.back() /></td></tr>"); out.println("</body>"); out.println("</html>"); } finally { out.close(); } } // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code."> /** * Handles the HTTP <code>GET</code> method. * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } /** * Handles the HTTP <code>POST</code> method. * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } /** * Returns a short description of the servlet. * @return a String containing servlet description */ @Override public String getServletInfo() { return "Short description"; }// </editor-fold>}