An outline of a resource-serving servlet.
- By Attila Szegedi
- December 1, 2001
Component Java
The road to reusable Servlet components
by Attila Szegedi
Listing 2. An outline of a resource-serving servlet.
package com.foo.myapp;
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class ResourceServlet
extends
HttpServlet
{
private static final long lastModified =
System.currentTimeMillis();
protected void doGet(
HttpServletRequest request,
HttpServletResponse response)
throws
ServletException,
IOException
{
InputStream in =
getClass().getResourceAsStream(
request.getPathInfo());
if(in == null)
{
response.sendError(
HttpServletResponse.SC_NOT_FOUND);
return;
}
try
{
OutputStream out =
response.getOutputStream();
byte[] buf = new byte[1024];
for(;;)
{
int len = in.read(buf);
if(len == -1) break;
out.write(buf, 0, len);
}
}
finally
{
in.close();
}
}
protected long getLastModified(
HttpServletRequest request)
{
return lastModified;
}
}
About the Author
Attila Szegedi is the lead developer at Scriptum, a company located in Szeged, Hungary, specializing in information retrieval and data cleansing technologies. Attila may be contacted at [email protected].