devxlogo

Simple HTML Display

Simple HTML Display

Question:
How can I have my servlet display an HTML file,located on the server, on the client’s browser?

Answer:
The HttpServlet class makes it very simple to send and receiveinformation to and from a Web browser. HttpServlet overrides theServlet service method and converts its arguments toHttpServletRequest and HttpServletResponse objects.

These are dispatched to an appropriate “do” method that you override andimplement. HTTP GET requests are dispatched to the doGet method,which you would need to implement in order to send an HTML file to a browser.

To transmit a file, you need to open it and copy its contentsto a Writer obtained from the ServletResponse using getWriter().Before obtaining the writer, you need to set the content type of thedata to an appropriate MIME type, in this particular case text/html.The accompanying code example demonstrates how to do this.

import java.io.*;import javax.servlet.*;import javax.servlet.http.*;public class SimpleServlet extends HttpServlet { protected void doGet(HttpServletRequest request,                      HttpServletResponse response)   throws ServletException, IOException {   char[] buffer = new char[1024];   int bytesRead;   PrintWriter writer;   Reader reader;   response.setContentType("text/html");   writer = response.getWriter();   // The filename will be interpreted relative to the current working   // directory of the Servlet engine, so you would probably want to use   // an absolute path.   reader = new BufferedReader(new FileReader("foo.html"));   while((bytesRead = reader.read(buffer)) != -1)     writer.write(buffer, 0, bytesRead);   reader.close();  }}
See also  Professionalism Starts in Your Inbox: Keys to Presenting Your Best Self in Email
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist