john pfeiffer
  • Home
  • Categories
  • Tags
  • Archives

read file web xml

// the servlet will open it's own web.xml file

import java.io.IOException;
import java.io.FileReader;
import java.io.BufferedReader;
import java.util.Properties;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class ReadFile extends HttpServlet
{
    private static final long serialVersionUID = 1L;

    protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException
  {
        response.setContentType( "text/html" );     // MIME type
        PrintWriter servletresponse = response.getWriter();

        outputXHTMLHeader( "Read File Example", servletresponse );
        servletresponse.println("<body>");

        String contextPath = request.getContextPath();
        String servletName =  getServletName();
        String submitTarget = contextPath + "/" + servletName;
        servletresponse.println( "request.getContextPath() / getServletNamesubmitTarget = " + submitTarget + "<br />");

        ServletContext myServletContext = getServletContext() ;
        Properties currentSystemProperties = System.getProperties();
        String fileseperatorsymbol = currentSystemProperties.getProperty( "file.separator" );
        String realpath = myServletContext.getRealPath( fileseperatorsymbol );
        String webInfDirectory = realpath + "WEB-INF/";
        servletresponse.println( "realpath + WEB-INF/ = " + webInfDirectory + "<br />" );
        displayFileContents( webInfDirectory , "web.xml" , servletresponse );

        servletresponse.println( "</body></html>" );
        servletresponse.close();
  } //end doGet()

  private static void displayFileContents( String path , String filename , PrintWriter servletresponse )
  {
    servletresponse.println( "opening " + path + filename );

        try{
            FileReader myFileReader = new FileReader( path + filename );
            BufferedReader myBufferedReader = new BufferedReader( myFileReader );
            String inputfilename_contents = "";

            servletresponse.println( "<pre>" );
            while ( ( inputfilename_contents = myBufferedReader.readLine() ) != null)
            {
                  String result = inputfilename_contents.replaceAll("<", "&lt;" );
                  servletresponse.println( result );
            }
            servletresponse.println( "</pre>" );
            myFileReader.close();  // only have to close the outermost wrapper
        }
        catch( IOException e )
        {
            e.printStackTrace();
            servletresponse.println( "error reading " + filename + " from " + path );
        }
  } // end displayFileContents


    private static void outputXHTMLHeader( String title , PrintWriter servletresponse )
    {
        servletresponse.println( "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1//EN\" \"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd\">");
        servletresponse.println( "<html xmlns=\"http://www.w3.org/1999/xhtml\">" );
        servletresponse.println( "<head><title>" + title + "</title>" );
        servletresponse.println( "<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />" );
        servletresponse.println( "</head>" );
    } //end outputXHTMLHeader

    protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException
    {
        doGet( request, response);
    }
} //end class

  • « read write file
  • atmos java intro library import »

Published

Nov 7, 2011

Category

java-servlet

~217 words

Tags

  • file 92
  • java-servlet 61
  • read 14
  • web 56
  • xml 22