Java wyswietlanie zawartosci txt

0

Witam. Posiadam aplikacje:

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
import java.io.IOException;
import java.io.PrintWriter;
 
public class HelloWorldServlet extends HttpServlet {
  private static final long serialVersionUID = 1L;
 
  protected void doGet(HttpServletRequest request,
                       HttpServletResponse response)
                 throws ServletException, IOException {
 
    response.setContentType("text/html");
 
    PrintWriter out = response.getWriter();
 
    out.println("<html><head><title>My Servlet</title></head><body>");
    out.println("Hello World!");
    out.println("<body></html>");
 
    out.close();
  }
}

To aplikacja na serer Tomcat (strone www)
Chciałbym, aby zamiast HelloWorld, aplikacja wyświetlała zawarość (lub jesli się da np. konkretną linie)
pliku tekstowego z dysku.
Uzywam debiana więc powiedzmy z /home/dane/plik.txt

Jaką komendą to osiągne? Szukam ale żadne rozwiązanie nie działa.

0

To pokaż co nie działa.

0

Błąd na stronie: "type: Status report"
Kod jest taki:

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;


public class Aplikacja extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws IOException, ServletException
    {
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();

		


  FileReader fr = null;
   String linia = "";

   // OTWIERANIE PLIKU:
   try {
     fr = new FileReader("plik.txt");
   } catch (FileNotFoundException e) {
       out.println("BŁĄD PRZY OTWIERANIU PLIKU!");
       System.exit(1);
   }

   BufferedReader bfr = new BufferedReader(fr);
   // ODCZYT KOLEJNYCH LINII Z PLIKU:
   try {
     while((linia = bfr.readLine()) != null){
        out.println(linia);
     }
    } catch (IOException e) {
        out.println("BŁĄD ODCZYTU Z PLIKU!");
        System.exit(2);
   }

   // ZAMYKANIE PLIKU
   try {
     fr.close();
    } catch (IOException e) {
         out.println("BŁĄD PRZY ZAMYKANIU PLIKU!");
         System.exit(3);
        }

		
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Aplikacja Testowa</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Aplikacja poprawnie zaladowana! </h1>");
        out.println("</body>");
        out.println("</html>");
		
	}
	
}

}

0 błedów podczas kompilacji a na stronie nie działa :/

1

O RLY? A wiesz jakie jest CWD aplikacji? Czemu liczysz na to że podanie ściezki względnej plik.txt jakimś cudem odwoła sie do /home/dane/plik.txt? Jasnowidz? o_O

0

DZIAŁA :D dzięki zapomniałem o najwazniejszej rzeczy:D

0

No ty chyba robisz sobie teraz jaja. Przecież sam w kodzie napisałes że jak nie znajdzie pliku to robi System.exit(1); a teraz się dziwisz ze "wywala tomcata". Masakra :D

1 użytkowników online, w tym zalogowanych: 0, gości: 1