import java.util.*; import java.text.*; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; /** * Configuration Servlet for environment properties * Sets the proper locations for directories, servlets locations, web locations, etc */ public class Setup extends HttpServlet { private static final String PROPERTIES_FILE = "tabuqueens_environment.properties"; /** * The base url for the servlets */ public static String SERVLETS_BASE_URL; private static int nextDirectory; private static int retCode; private static String errMessage; private static Properties prop; private static final int OK = 0; private static final int IOError = 1; private static final int invalidHtmlDirectory = 2; private static final String servletsBaseUrl = "servlets.base.url"; private static final String servletsBaseUrl_default = "http://fitzgerald.cs.uga.edu:8080/tabusearch/servlet/"; static { errMessage = ""; retCode = OK; try { prop = new Properties(); prop.load( new FileInputStream( new File( PROPERTIES_FILE ) ) ); } catch( FileNotFoundException fnfe ) { System.err.println( "create a default properties file" ); } catch( IOException ioe ) { retCode = IOError; errMessage = "Setup: Error loading system properties\n" + ioe; System.err.println( errMessage ); ioe.printStackTrace(); } SERVLETS_BASE_URL = prop.getProperty( servletsBaseUrl, servletsBaseUrl_default ).trim(); if( ! SERVLETS_BASE_URL.endsWith( "/" ) ) { SERVLETS_BASE_URL += "/"; } } public void doGet( HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException { doPost( request, response ); } /** * Displays the web page to set/change properties * * */ public void doPost( HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException { final String title = "Configuration for Tabu Search N-Queens"; final String setup = "setup"; final String save = "save"; final String create = "create.web.page"; PrintWriter out; response.setContentType( "text/html" ); out = response.getWriter(); out.println( "
" + errmsg + "" ); System.err.println( errmsg ); fnfe.printStackTrace(); } catch( IOException ioe ) { String errmsg = "Setup: Error re-writing system properties\n" + ioe; out.println( "
" + errmsg + "" ); System.err.println( errmsg ); ioe.printStackTrace(); } } out.println( "
" ); out.println( "" ); out.close(); } private static String formatLine( String name, String value ) { String out = ""; out += "