/* * HiddenFields.java * * Created on November 16, 2004, 9:11 AM */ package coreservlets; import java.io.*; import java.net.*; import javax.servlet.*; import javax.servlet.http.*; /** * * @author Tim Downey * @version */ public class HiddenFields extends HttpServlet { /** Initializes the servlet. */ public void init(ServletConfig config) throws ServletException { super.init(config); } /** Destroys the servlet. */ public void destroy() { } /** Processes requests for both HTTP GET and POST methods. * @param request servlet request * @param response servlet response */ private final String[] colorNames = {"Red", "Green", "Blue", "Yellow", "Purple", "Orange"}; protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); HiddenData data = new HiddenData(); coreservlets.beans.BeanUtilities.populateBean(data, request); if (request.getParameter("First") != null) { Page(out, SecondBody(data)); } else if (request.getParameter("Second") != null) { Page(out, ThirdBody(data)); } else { Page(out, FirstBody(data)); } out.close(); } /** Handles the HTTP GET method. * @param request servlet request * @param response servlet response */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } /** Handles the HTTP POST method. * @param request servlet request * @param response servlet response */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } /** Returns a short description of the servlet. */ public String getServletInfo() { return "Short description"; } public void Page(PrintWriter out, String body) { out.println("\n" + "\n" + " Hidden Fields\n" + "\n" + "\n" + body + "\n" + "\n"); } public String FirstBody(HiddenData data) { StringBuffer result = new StringBuffer(); result.append("
\n"); result.append(" Full Name:
\n"); result.append(inputGroup("checkbox", "colors", colorNames, data)); result.append(" \n"); result.append("
"); return result.toString(); } public String SecondBody(HiddenData data) { StringBuffer result = new StringBuffer(); result.append("
\n"); result.append(data.getFullName()); result.append(data.getFullNameHidden()); result.append("
\n"); result.append(inputGroup("checkbox", "colors", colorNames, data)); result.append(" \n"); result.append("
"); return result.toString(); } public String ThirdBody(HiddenData data) { StringBuffer result = new StringBuffer(); result.append("
\n "); result.append(data.getFullName()); result.append(data.getFullNameHidden()); result.append("
\n ");; result.append(data.getColorsList()); result.append(data.getColorsHidden()); result.append("
\n");; result.append(" \n"); result.append("
"); return result.toString(); } public String inputGroup(String type, String name, String[] values, HiddenData data) { StringBuffer result = new StringBuffer(); if (values != null) { for (int i=0; i < values.length; i++) { result.append(" "); result.append(values[i]); result.append("\n"); } } return result.toString(); } }