/*
*
* Copyright 2001 Sun Microsystems, Inc. All Rights Reserved.
*
* This software is the proprietary information of Sun Microsystems, Inc.
* Use is subject to license terms.
*
*/
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import cart.*;
import util.Currency;
/**
* An HTTP Servlet that responds to the GET method of the
* HTTP protocol. It returns a form to the user that gathers data.
* The form POSTs to another servlet.
*/
public class CashierServlet extends HttpServlet {
public void doGet (HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
{
// Get the user's session and shopping cart
HttpSession session = request.getSession();
ShoppingCart cart =
(ShoppingCart)session.getAttribute("cart");
if (cart == null) {
cart = new ShoppingCart();
session.setAttribute("cart", cart);
}
// set content-type header before accessing Writer
response.setContentType("text/html");
PrintWriter out = response.getWriter();
Currency c = new Currency();
c.setLocale(request.getLocale());
c.setAmount(cart.getTotal());
// then write the data of the response
out.println("<html>" +
"<head><title> Cashier </title></head>");
// Get the dispatcher; it gets the banner to the user
RequestDispatcher dispatcher =
getServletContext().getRequestDispatcher("/banner");
if (dispatcher != null)
dispatcher.include(request, response);
// Print out the total and the form for the user
out.println("<p>Your total purchase amount is: " +
"<strong>" + c.getFormat() + "</strong>" +
"<p>To purchase the items in your shopping cart," +
" please provide us with the following information:" +
"<form action=\"" +
response.encodeURL(request.getContextPath() + "/receipt") +
"\" method=\"post\">" +
"<table>" +
"<tr>" +
"<td><strong>Name:</strong></td>" +
"<td><input type=\"text\" name=\"cardname\"" +
"value=\"Gwen Canigetit\" size=\"19\"></td>" +
"</tr>" +
"<tr>" +
"<td><strong>Credit Card Number:</strong></td>" +
"<td>" +
"<input type=\"text\" name=\"cardnum\" " +
"value=\"xxxx xxxx xxxx xxxx\" size=\"19\"></td>" +
"</tr>" +
"<tr>" +
"<td></td>" +
"<td><input type=\"submit\"" +
"value=\"Submit Information\"></td>" +
"</tr>" +
"</table>" +
"</form>" +
"</body>" +
"</html>");
out.close();
}
public String getServletInfo() {
return "The Cashier servlet takes the user's name and " +
"credit card number so that the user can buy the books.";
}
}