/* * TestContextLogServlet - PWC 1.0 GENE21 (bug 4781119). Log * ServletContext.log() message as "INFO" messages. */ package servlet_tests; import java.io.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*; public class TestContextLogServlet extends HttpServlet { private ServletContext context; private File baseDir = null; private String logFile = null; private String fullLogFileName = null; private String serverType = null; private String str = null; public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println(""); out.println(""); out.println("

TestContextLogServlet


"); ServletContext servletContext = getServletContext(); //get the file name from the request parameter serverType = (String) request.getParameter("serverType"); logFile = (String) request.getParameter("logFile"); if (serverType == null) { out.println("Test FAILED: parameter serverType is null, it should " + "be either s1as8, jwsdp, s1ws, or tomcat
"); } else if (logFile == null) { out.println("Test FAILED: parameter logFile is null
"); } else if (servletContext != null) { // Get the base directory for the temp working files baseDir = (File) servletContext.getAttribute( "javax.servlet.context.tempdir"); // Get the full path name of server.log String logBaseDir = null; if (serverType.equals("s1as8")) { String baseDirString = baseDir.toString(); System.out.println("base dir is : " + baseDirString); logBaseDir = baseDirString.substring(0, baseDirString.indexOf( "generated")); logBaseDir = logBaseDir + "logs" + baseDir.separator; System.out.println("logBaseDir is : " + logBaseDir); } fullLogFileName = logBaseDir + logFile; // Test the servletContext.log() String message = "Log message from TestContextLogServlet.doGet()"; servletContext.log(message); // Check the server.log for this INFO message boolean found = false; try { BufferedReader in = new BufferedReader(new FileReader( fullLogFileName)); String s = null; while ((s = in.readLine()) != null) { if (s.indexOf(message) > -1 && s.indexOf("INFO") > -1) { found = true; break; } } in.close(); if (found) { out.println("Test PASSED: found \"" + message + "\"" + " in server.log
"); // out.println("s = \"" + s + "\""); } else { out.println("Test FAILED: can't find \"" + message + "\"" + " in server.log
"); } } catch (Exception e) { e.printStackTrace(out); } } else { if (servletContext == null) { out.println("Test FAILED: servletContext is null
"); } } out.println("
"); out.println(""); out.flush(); out.close(); } }