I have a html page where i get the no of tickets to be booked from the user. it thus goes to an servlet page called a1 where insertion and updations occur. from there it moves to another servlet called a2 where the user gets a preview of the ticket booked with some details. a1 servlet does its job and moves to a2 servlet, but a2 servlet just shows a blank page and doesn't show any content i have given. Please some one tell me whats the problem here. Here is the code:
<body><p id="p2"><a id="a" href="index3.html"><button class="btn2">HOME</button></a><a id="a" href="index4.html"><button class="btn22">ABOUT US</button></a><a id="a" href="index5.html"><button class="btn23">CONTACT US</button></a></p><img id="i1" src="BIX2.png" alt="BIXcinemas"><p id="p5"></p><p id="p6"></p><div id="div1"><form action="a1" method="post" onsubmit="return checking()"><label>NO OF SEATS : </label> <input type="text" id="ticketCount" name="ticketCount"><input id="btn3" type="submit" value="PROCEED"></form></div><footer id="p4"><div id="df"><p id="pa1">follow us on: </p><img id="cc2" src="icons8-facebook-48.png" alt="fb"><img id="cc3" src="icons8-instagram-48.png" alt="ig"> <img id="cc4" src="icons8-twitter-50.png" alt="x"><img id="cc5" src="icons8-youtube-48.png" alt="youtube"><img id="cc6" src="icons8-whatsapp-48.png" alt="wapps"><p id="pa1">heins road, chennai - 82<br> 86473473289</p></div></footer></body></html>
a1 servlet:import javax.servlet.RequestDispatcher;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 javax.servlet.http.HttpSession;import java.io.IOException;import java.io.PrintWriter;import static java.lang.System.out;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.PreparedStatement;import java.sql.SQLException;import java.sql.Statement;import java.util.Arrays;import java.util.logging.Level;import java.util.logging.Logger;import javax.servlet.ServletContext;import javax.servlet.annotation.WebServlet;/** * * @author Princy Beenu L */@WebServlet(urlPatterns = {"/a1"})public class a1 extends HttpServlet { protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); try (PrintWriter out = response.getWriter()) { /* TODO output your page here. You may use following sample code. */ out.println("<!DOCTYPE html>"); out.println("<html>"); out.println("<head>"); out.println("<title>Servlet a1</title>"); out.println("</head>"); out.println("<body>"); out.println("<h1>Servlet a1 at " + request.getContextPath() +"</h1>"); out.println("</body>"); out.println("</html>"); } } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { res.setContentType("text/html;charset=UTF-8"); PrintWriter out = res.getWriter(); try(Connection conn = DriverManager.getConnection("jdbc:derby://localhost:1527/shopmedb")) { Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT COUNT(*) AS row_count FROM DB1"); rs.next(); int rowCount = rs.getInt("row_count"); if (rowCount == 0) { String qry = "INSERT INTO DB1 (total_seats) VALUES (?)"; PreparedStatement insertPs = conn.prepareStatement(qry); insertPs.setInt(1, 30); insertPs.executeUpdate(); }} catch (SQLException ex) { Logger.getLogger(a1.class.getName()).log(Level.SEVERE, null, ex);} int no_of_seats_to_book = Integer.parseInt(req.getParameter("ticketCount")); int price_per_ticket = 190; int tp = no_of_seats_to_book*190; int seat_num = 4; try (Connection conn = DriverManager.getConnection("jdbc:derby://localhost:1527/shopmedb")) { String query = "INSERT INTO DB1 (no_of_seats_to_book, seat_numbers, price_of_1, total_price) VALUES (?, ?, ?, ?)"; PreparedStatement ps = conn.prepareStatement(query); //ps.setInt(1, total); ps.setInt(1, no_of_seats_to_book); ps.setInt(2, seat_num); ps.setInt(3, price_per_ticket); ps.setInt(4, tp); ps.executeUpdate(); } catch (SQLException ex) { Logger.getLogger(a1.class.getName()).log(Level.SEVERE, null, ex); } out.println("im here"); try (Connection conn = DriverManager.getConnection("jdbc:derby://localhost:1527/shopmedb")) { String query = "SELECT total_seats FROM DB1"; Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(query); int ogtotal_seats = 0; if (rs.next()) { ogtotal_seats = rs.getInt("total_seats"); } int updatedTotalSeats = ogtotal_seats - no_of_seats_to_book; String query1 = "UPDATE DB1 SET total_seats = ? WHERE total_seats >= ?"; PreparedStatement ps = conn.prepareStatement(query1); ps.setInt(1, updatedTotalSeats); ps.setInt(2, no_of_seats_to_book); ps.executeUpdate(); out.println("im here"); res.sendRedirect("a2"); out.println("im here");} catch (SQLException ex) { Logger.getLogger(a1.class.getName()).log(Level.SEVERE, null, ex); } } @Override public String getServletInfo() { return "Short description"; }// </editor-fold>}
a2 servlet:import javax.servlet.RequestDispatcher;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 javax.servlet.http.HttpSession;import java.io.IOException;import java.io.PrintWriter;import static java.lang.System.out;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.PreparedStatement;import java.sql.SQLException;import java.util.Arrays;import java.util.logging.Level;import java.util.logging.Logger;/** * * @author Princy Beenu L */@WebServlet(urlPatterns = {"/a2"})public class a2 extends HttpServlet { protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); try (PrintWriter out = response.getWriter()) { out.println("<!DOCTYPE html>"); out.println("<html>"); out.println("<head>"); out.println("<title>Servlet a2</title>"); out.println("</head>"); out.println("<body>"); out.println("<h1>Servlet a2 at " + request.getContextPath() +"</h1>"); out.println("</body>"); out.println("</html>"); } } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { res.setContentType("text/html"); PrintWriter out = res.getWriter(); HttpSession session = req.getSession(false); String username = (String) session.getAttribute("name"); //String password = (String) session.getAttribute("password"); try (Connection conn = DriverManager.getConnection("jdbc:derby://localhost:1527/shopmedb")) { String query = "SELECT * FROM DB1 ORDER BY id DESC FETCH FIRST ROW ONLY"; PreparedStatement ps = conn.prepareStatement(query); ResultSet resultSet = ps.executeQuery(); while(resultSet.next()) { int total_booked_seat = resultSet.getInt("no_of_seats_booked"); int totalPrice = resultSet.getInt("price"); int seat_numbers = resultSet.getInt("seat_numbers"); out.println("<!DOCTYPE html>\n" +"<html>\n" +" <head>\n" +" <title>Payment Gateway - BIXcinemas</title>\n" +" <meta charset=\"UTF-8\">\n" +" <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n" +" \n" +" <style>\n" +" #t1{\n" +" color: orange; \n" +" }\n" +" \n" +" body{\n" +" background-color: rgb(127, 199, 217);\n" +" }\n" +"\n" +" #btn1{\n" +" position:absolute;\n" +" top: 80%;\n" +" left: 30%;\n" +" font-size: 14px;\n" +" padding: 8px;\n" +" border: 2px solid rgb(251, 168, 52);\n" +" border-radius: 12px;\n" +" color: rgb(251, 168, 52);\n" +" display: block;\n" +" margin: 50px;\n" +" background: transparent;\n" +" transition: .3s ease-in-out 0s;\n" +" }\n" +" \n" +" #btn1:hover{\n" +" cursor: pointer;\n" +" transform: scale(1.25);\n" +" background: rgb(251, 168, 52);\n" +" color: #000;\n" +" }\n" +"\n" +" #p2{\n" +" width: 100%; \n" +" height: 120px; \n" +" background-color: rgb(54, 84, 134);\n" +" border-radius: 15px;\n" +" }\n" +" \n" +" #i1{\n" +" position:absolute;\n" +" top: 4%;\n" +" left: 2%;\n" +" width: 20%;\n" +" height: 100px;\n" +" }\n" +" \n" +" .btn2 {\n" +" position:absolute;\n" +" top: 10%;\n" +" left: 35%;\n" +" margin-right: 11%;\n" +" font-size: 15px;\n" +" font-weight: bold;\n" +" padding: 8px;\n" +" padding-left: 20px;\n" +" padding-right: 20px;\n" +" border: 2px solid rgb(251, 168, 52);\n" +" border-radius: 12px;\n" +" color: #fff;\n" +" background: rgb(251, 168, 52);\n" +" transition: .3s ease-in-out 0s;\n" +" }\n" +"\n" +" .btn2:hover {\n" +" cursor: pointer;\n" +" transform: scale(1.25);\n" +" background: transparent;\n" +" color: rgb(251, 168, 52);\n" +" } \n" +" \n" +" .btn22 {\n" +" position: absolute;\n" +" top: 10%;\n" +" left: 45%;\n" +" margin-right: 11%;\n" +" font-size: 15px;\n" +" font-weight: bold;\n" +" padding: 8px;\n" +" padding-left: 20px;\n" +" padding-right: 20px;\n" +" border: 2px solid rgb(251, 168, 52);\n" +" border-radius: 12px;\n" +" color: #fff; \n" +" background: rgb(251, 168, 52);\n" +" transition: .3s ease-in-out 0s;\n" +" }\n" +"\n" +" .btn22:hover {\n" +" cursor: pointer;\n" +" transform: scale(1.25);\n" +" background: transparent; \n" +" color: rgb(251, 168, 52); \n" +" }\n" +"\n" +" .btn23 {\n" +" position:absolute;\n" +" top: 10%;\n" +" left: 58%;\n" +" margin-right: 11%;\n" +" font-size: 15px;\n" +" font-weight: bold;\n" +" padding: 8px;\n" +" padding-left: 20px;\n" +" padding-right: 20px;\n" +" border: 2px solid rgb(251, 168, 52);\n" +" border-radius: 12px;\n" +" color: #fff;\n" +" background: rgb(251, 168, 52); \n" +" transition: .3s ease-in-out 0s;\n" +" }\n" +"\n" +" .btn23:hover {\n" +" cursor: pointer;\n" +" transform: scale(1.25);\n" +" background: transparent; \n" +" color: rgb(251, 168, 52);\n" +" } \n" +" \n" +" .text{\n" +" font-family: cooper black;\n" +" }\n" +" \n" +" h2{\n" +" color: rgb(71, 79, 122);\n" +" font-family: calibri;\n" +" font-size: 27px;\n" +" }\n" +" \n" +" #a {\n" +" text-decoration: none;\n" +" color: inherit;\n" +" }\n" +" \n" +" #p4{\n" +" position:absolute;\n" +" top: 180%;\n" +" left: 0.5%;\n" +" width: 99%; \n" +" height: 200px; \n" +" background-color: rgb(54, 84, 134);\n" +" border-radius: 8px;\n" +" }\n" +" \n" +" #pa1{\n" +" font-family: calibri;\n" +" font-size: 20px;\n" +" color: white;\n" +" font-weight: bold;\n" +" }\n" +" \n" +" #d1{\n" +" text-align: center;\n" +" }\n" +" \n" +" #p6{\n" +" position:absolute;\n" +" top: 30%;\n" +" left: 36%;\n" +" width: 400px; \n" +" height: 300px; \n" +" background-color: rgb(255, 210, 63);\n" +" border-radius: 15px;\n" +" box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); \n" +" }\n" +" \n" +" #div1{\n" +" position:absolute;\n" +" top: 35%;\n" +" left: 40%;\n" +" color: rgb(54, 84, 134);\n" +" font-size: 18px;\n" +" font-weight: bold;\n" +" font-family: calibri;\n" +" }\n" +" \n" +" .t1{\n" +" border: none;\n" +" background-color: transparent;\n" +" }\n" +" \n" +" #l4 {\n" +" position: absolute;\n" +" top: 79%;\n" +" left: 74%;\n" +" margin-right: 10px;\n" +" font-size: 15px;\n" +" font-family: cooper black;\n" +" }\n" +" </style>\n" +" \n" +" \n" +" </head>\n" +" <body>\n" +" <p id=\"p2\">\n" +" <a id=\"a\" href=\"index3.html\"><button class=\"btn2\">HOME</button></a>\n" +" <a id=\"a\" href=\"index4.html\"><button class=\"btn22\">ABOUT US</button></a>\n" +" <a id=\"a\" href=\"index5.html\"><button class=\"btn23\">CONTACT US</button></a>\n" +" </p>\n" +" <img id=\"i1\" src=\"BIX2.png\" alt=\"BIXcinemas\">\n" +" \n" +" <p id=\"p5\"></p>\n" +" <p id=\"p6\"></p>\n"); out.println("<p id='r'>--PREVIEW--</p>"); out.println("<div id=r1>"); out.println("User:" + username); out.println("<table>"); out.println("<tr><td>Seat Numbers: </td><td>" + seat_numbers +"</td></tr><br>"); out.println("<tr><td>No of Seats: </td><td>" + total_booked_seat +"</td></tr><br>"); out.println("<tr><td>Total Price: </td><td>" + totalPrice +"</td></tr><br>"); out.println("</table>"); out.println("<a href='index32.html'><button id='btn3'>Pay</button></a>"); out.println("</div>");out.println(" <footer id=\"p4\"><div id=\"d1\">\n" +" <p id=\"pa1\">follow us on: </p>\n" +" <img id=\"c2\" src=\"icons8-facebook-48.png\" alt=\"fb\">\n" +" <img id=\"c3\" src=\"icons8-instagram-48.png\" alt=\"ig\"> \n" +" <img id=\"c4\" src=\"icons8-twitter-50.png\" alt=\"x\">\n" +" <img id=\"c5\" src=\"icons8-youtube-48.png\" alt=\"youtube\">\n" +" <img id=\"c6\" src=\"icons8-whatsapp-48.png\" alt=\"wapps\">\n" +" \n" +" <p id=\"pa1\">heins road, chennai - 82<br> 86473473289</p>\n" +" </div></footer>\n" +" </body>\n" +"</html>\n");} } catch (SQLException ex) { Logger.getLogger(a2.class.getName()).log(Level.SEVERE, null, ex); } }