public class ContentReader {
public StringBuffer getPageContent(StringBuffer sb, String page, javax.servlet.ServletContext sc) throws java.io.IOException {
java.net.URL url = sc.getResource("/myPages/"+page+".txt");
try {
java.io.InputStream is = url.openStream();
if (is != null) {
java.io.BufferedReader br = new java.io.BufferedReader(new java.io.InputStreamReader(is));
String s;
while ((s = br.readLine()) != null) {
sb.append(s+"\n");
}
br.close();
is.close();
}
}
catch (java.io.FileNotFoundException fnfe) {
sb = pageNotFoundError(sb, page);
}
catch (NullPointerException npe) {
sb = pageNotFoundError(sb, page);
}
return sb;
}
private StringBuffer pageNotFoundError(StringBuffer sb, String page) {
sb.append("<h1>"+page.replace('-', ' ')+" page was not found</h1>\n"+
"<p>We're sorry but the page you have requested, "+page.replace('-', ' ')+", has either been renamed or deleted from this server.</p>");
return sb;
}
};