Olá. Sei que este é um tema bastante discutido. Inclusive pesquisei no GUJ e fiz vários testes… mas não consigo fazer uma servlet ler um arquivo com conteúdo html e mandar as linhas para out.println… Onde estou errando? por favor ajudem.
Porque sempre dá NullPointerException???
Veja os testes que já fiz:
...
try {
String fileName="/WEB-INF/BTTNLOGI.HTM";
log("reading resource: "+ fileName);
//URI uri = getClass().getResource(fileName).toURI();
//FileInputStream fis = new FileInputStream(new File(uri));
//BufferedReader br = new BufferedReader(new InputStreamReader(fis));
// InputStream is = getClass().getClassLoader().getResourceAsStream(fileName);
// BufferedReader br = new BufferedReader(new InputStreamReader(is));
//URL url = getServletContext().getResource(fileName);
//BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream()));
//InputStream is = getServletContext().getResourceAsStream(fileName);
//BufferedReader br = new BufferedReader(new InputStreamReader(is));
//FileInputStream fis = new FileInputStream(Thread.currentThread().getContextClassLoader().getResource(fileName).getPath());
//BufferedReader br = new BufferedReader(new InputStreamReader(fis));
FileInputStream fis = new FileInputStream(getServletContext().getResource(fileName).getFile());
BufferedReader br = new BufferedReader(new InputStreamReader(fis));
String s;
while ((s = br.readLine()) != null) {
out.println(s);
}
br.close();
...
[quote=betounisul]Log somente “getServletContext().getResource(fileName).getFile()”, pois possivelmente o arquivo não está sendo encontrado.
[/quote]
Obrigado. Graças a sua resposta identifiquei o problema
Coloquei a linha com log… e deu nullPointer novamente… aí coloquei um getRealPath para ver para onde estava apontando e … descobri que o nome do arquivo estava errado :oops: