Dies ist eine statische Kopie unseres alten Forums. Es sind keine Interaktionen möglich.
This is a static copy of our old forum. Interactions are not possible.

motja

Trainee

  • "motja" started this thread

Posts: 53

Date of registration: Nov 8th 2004

1

Tuesday, October 30th 2007, 2:51pm

JavaServer Pages (JSP)

Hi,

ich arbeite jetzt an einem kleinem Projekt, das folgendes tun soll.
Es gibt eine .txt Datei, die von .jsp unter verwendung von JavaBeans eingelesen wird. Als Ergebnis soll eine html-Seite erscheinen, die an bestimmten Stellen die eingelesene Textstellen aus der .txt Datei hat.
Entwicklungsumgebung ist NetBeans 5.5.1.

Wenn ich nur die Java-Klasse compiliere (main-Methode schreibe ich extra rein, sonst gehört sie nicht dazu), dann wird mir auf der Konsole die Ausgabe richtig angezeigt, d.h. die .txt Datei wird eingelesen.
Wenn ich aber das Projekt laufen lasse, dann wird mir angezeigt, dass die .txt Datei nicht gefunden wird.

hier ist der Ausschnitt aus der Java-Klasse:

public String processRequest() {

String textString = null;
File file = new File("list.txt");

try {
// reader oeffnen
FileReader fileReader = new FileReader(file);
BufferedReader bufferedReader = new BufferedReader(fileReader);


Der File list.txt wird nicht gefunden egal wohin ich es packe ;)
Ich vermute, dass in web.xml etwas angepasst werden soll, nur weis ich nicht genau was un dan welcher Stelle.

würde mich freuen, wenn mir jemand bei der Sache hilft.

motja

Trainee

  • "motja" started this thread

Posts: 53

Date of registration: Nov 8th 2004

2

Wednesday, October 31st 2007, 4:16pm

ich habe jetzt die Datei direkt auf C:// gespeichert um auszuprobieren, ob sie gefunden wird, wenn ich den absoluten Pfad angebe. Und das funktioniert.
Wenn ich jetzt das Projekt im NetBeans laufen lasse, funktioniert alles.
Habe ich Sachen auf dem Server gespeichert und rufe die index.jsp auf so werden die scripting nicht ausgewertet, sondern auf der Seite als Text ausgegeben.
Woran kann nun das liegen?

hyperion

Erfahrener Schreiberling

  • "hyperion" is male

Posts: 422

Date of registration: Oct 8th 2004

3

Wednesday, October 31st 2007, 5:57pm

Habe ich Sachen auf dem Server gespeichert und rufe die index.jsp auf so werden die scripting nicht ausgewertet, sondern auf der Seite als Text ausgegeben.
Woran kann nun das liegen?


Also, wenn Du per Browser auf die Seite gehst, dann kommt nicht Deine HTML Seite, sondern der Quelltext? Das liegt daran, dass der Server die Seite nicht interpretiert. Du musst nun den Server richtig einstellen. Wie, wo und was sollte bei der Serverhilfe, sowie bei dem Interpreter stehen.
"Der Klügere gibt nach! Eine traurige Wahrheit, sie begründet die Weltherrschaft der Dummheit." --Marie von Ebner-Eschenbach

migu

free rider

  • "migu" is male

Posts: 2,643

Date of registration: Dec 11th 2001

Occupation: Developer

4

Sunday, November 4th 2007, 12:53am

Versuche es doch einmal mit dem ResourceLoader:

Source code

1
2
InputStream inputStream = this.getClass().getResourceAsStream("file");
BufferedReader breader = new BufferedReader(new InputStreamReader(inputStream));

Genaueres steht in der Dokumentation zu Class.getResourceAsStream().
tar: Anlegen eines leeren Archivs wird feige verweigert.

migu

free rider

  • "migu" is male

Posts: 2,643

Date of registration: Dec 11th 2001

Occupation: Developer

5

Sunday, November 4th 2007, 1:00am

ich habe jetzt die Datei direkt auf C:// gespeichert um auszuprobieren, ob sie gefunden wird, wenn ich den absoluten Pfad angebe. Und das funktioniert.
In Webanwendungen ist das keine gute Vorgehensweise. Wenn du die Webanwendung als WAR-Archiv auf einem Server deployst, dann kannst du keine Dateien außerhalb dieser Datei ablegen. Außerdem weißt du nicht, ob der Server überhaupt Laufwerke hat oder welche. (Siehe auch mein Hinweis oben zu getResourceAsStream().)

Quoted

Wenn ich jetzt das Projekt im NetBeans laufen lasse, funktioniert alles.
Habe ich Sachen auf dem Server gespeichert und rufe die index.jsp auf so werden die scripting nicht ausgewertet, sondern auf der Seite als Text ausgegeben.
Woran kann nun das liegen?
Welche Servlet/JSP-Engine benutzt du denn? Wo hast du die index.jsp gespeichert? Hast du eine Webanwendung für den Server konfiguriert? Wie?
tar: Anlegen eines leeren Archivs wird feige verweigert.

motja

Trainee

  • "motja" started this thread

Posts: 53

Date of registration: Nov 8th 2004

6

Monday, November 5th 2007, 4:27pm

ich habe die Anwendung als WAR auf den Apache Tomcat deployt und die list.txt in demselben Verzeichnis plaziert, auf die ich dann über File file = new File("/var/lib/tomcat5/webapps/ROOT/text/list.txt") zugreife. das funktioniert, nur wollte ich die Datei im WAR drin haben.besser gesagt, die Datei habe ich auch in WAR, nur wenn ich den Pfad zu der Datei angebe, funktioniert alles wieder nicht.

migu

free rider

  • "migu" is male

Posts: 2,643

Date of registration: Dec 11th 2001

Occupation: Developer

7

Tuesday, November 13th 2007, 1:11pm

ich habe die Anwendung als WAR auf den Apache Tomcat deployt und die list.txt in demselben Verzeichnis plaziert, auf die ich dann über File file = new File("/var/lib/tomcat5/webapps/ROOT/text/list.txt") zugreife. das funktioniert, nur wollte ich die Datei im WAR drin haben.besser gesagt, die Datei habe ich auch in WAR, nur wenn ich den Pfad zu der Datei angebe, funktioniert alles wieder nicht.
Wenn du eine Datei im WAR/JAR/whatever öffnen willst, musst du so vorgehen, wie ich es oben beschrieben habe. Falls du dazu noch Fragen hast, melde dich hier einfach noch mal zu Wort. :)
tar: Anlegen eines leeren Archivs wird feige verweigert.