import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class FirstCode extends HttpServlet implements HtmlStrings {
public void init(ServletConfig config) throws ServletException {
super.init(config);
}
public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
StringBuffer sb = new StringBuffer();
String firstName = "";
String lastName = "";
int numPick = 0;
double amount = 0;
boolean inputCheck = true;
Vector varNames = new Vector();
if ((req.getParameter("firstName") != null) && (!req.getParameter("firstName").trim().equals(""))) {
firstName = req.getParameter("firstName").trim();
}
else {
inputCheck = false;
varNames.addElement("First Name");
}
if ((req.getParameter("lastName") != null) && (!req.getParameter("lastName").trim().equals(""))) {
lastName = req.getParameter("lastName").trim();
}
else {
inputCheck = false;
varNames.addElement("Last Name");
}
if ((req.getParameter("num") != null) && (!req.getParameter("num").trim().equals(""))) {
numPick = Integer.parseInt(req.getParameter("num").trim());
}
else {
inputCheck = false;
varNames.addElement("Pick Number");
}
if ((req.getParameter("amount") != null) && (!req.getParameter("amount").trim().equals(""))) {
amount = Double.parseDouble(req.getParameter("amount").trim());
}
else {
inputCheck = false;
varNames.addElement("Amount");
}
if (inputCheck) {
String remoteAddy = req.getRemoteAddr();
String remoteHost = req.getRemoteHost();
String scheme = req.getScheme();
String serverName = req.getServerName();
int serverPort = req.getServerPort();
double totalCost = numPick * amount;
NumberFormat nf = NumberFormat.getCurrencyInstance();
sb.append(HTMLTOP1+"Our First Formatted Output Page"+HTMLTOP2);
sb.append(BODYTAG);
sb.append(TRTD1);
sb.append(WELCOME);
sb.append("</TD></TR><TR>"+TDTR1+"Your Name: </TD>");
sb.append(TD1+firstName+" "+lastName+STDTR2);
sb.append("<TR>"+TDTR1+" The number you chose was: </TD>");
sb.append(TD1+numPick+STDTR2);
sb.append("<TR>"+TDTR1+"The Dollar amount you chose was: </TD>");
sb.append(TD1+nf.format(amount)+STDTR2);
sb.append("<TR>"+TDTR1+"Your Total:</TD>");
sb.append(TD1+nf.format(totalCost)+STDTR2);
sb.append("<TR>"+TDTR1+"Your Remote Address: </TD>");
sb.append(TD1+remoteHost+STDTR2);
sb.append("<TR>"+TDTR1+"Server Protocol: </TD>");
sb.append(TD1+scheme+STDTR2);
sb.append(SHUTOFFALL);
}
else {
sb.append("Your request could not be handled do to the following required parameters being left empty:<br>");
Enumeration enum = varNames.elements();
while (enum.hasMoreElements()) {
sb.append("Null Value in "+enum.nextElement()+ "<br>");
}
}
res.setContentType("text/html");
PrintWriter out = res.getWriter();
out.println(sb);
out.close();
}
public void doGet (HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
doPost(req, res);
}
};