JSP und lokales Dateisystem?

Ich möchte eine Applikation zur Auflistung und Durchsuchung von PDF Dateien in einem Dateisystem schreiben. Diese Anwendung soll von CD laufen und eine Pfadangabe im Dateisystem des Benutzers übergeben bekommen. Da ich mich ein wenig mit Java beschäftigt habe, möchte ich das Ganze in Java lösen. Nun hat aber an den Rechnern der Benutzer nicht unbedingt jeder Java installiert. Deshalb möchte ich eine Applikation erstellen, die keine Java Installation vorraussetzt. Hat jemand eine Ahnung ob das geht? Momentan bin ich an einer CD mit installationsfreiem Tomcat-Server und einer eignenen Java-Installation. Die funktioniert auch alleine. Allerdings befürchte ich, dass man mit JSP nicht auf das Dateisystem zugreifen kann - oder irre ich mich hier?

Statt JSPs, die unbedingt Tomcat oder ähnliches brauchen, würde ich eine echte Applikation bauen. Di ebraucht dann auch „nur“ eine JRE-Umgebung und kann dann gestartet werden. Im Gegensatz zu JSPs können Applikationen auch auf das Dateisystem zugreifen.

Wenn es aber nur ums Auflisten von Dateien geht, würde ich gar kein Java verwenden, sondern schlicht und einfach auf grep zurückgreifen - das macht weniger Arbeit.

Hm, ich sehe gerade, ich habe mich etwas komisch ausgedrückt und Details vergessen. Entschuldigung hierfür, ich bin langsam neben der Spur :frowning: Also, nochmal eine Schilderung was ich eigentlich möchte:

Meine Firma liefert an einen Kunden eine große Sammlung PDF’s aus. Zu diesen PDF’s gehört auch eine Datenbank mit Adressen, etc…
Wir haben hierfür eine Websuche geschrieben und der Kunde kann nach Adressen suchen und bekommt gleichzeitig die zugehörigen PDF’s als Links ausgegeben.
Nun möchte der Kunde das auch lokal haben. Die erste Idee war einfach ein Server2Go. Leider kam dann der Sonderwunsch, dass die PDF’s zentral auf einem lokalen Transfer beim Kunden abgelegt werden und Mitarbeiter von ihrem Arbeitsplatz die CD einschieben, den Pfad zu den PDF’s angeben und die Applikation verwenden können.
Leider beherrscht mein Kollege nur PHP und ich neben PHP auch ein wenig Java. Da ich weiß, dass man mit Java auf das Dateisystem zugreifen kann wollte ich dieses verwenden - dann kam aber die Info, dass eventuell keine Java Runtime installiert ist und wir deshalb eine Lösung brauchen, die ohne vorraussetzungen funktioniert.
Das JSP das nicht kann habe ich mir fast gedacht - aber es nicht wahrhaben wollen (das läuft so schön problemlos ohne nötige Installationen von CD aus…)

Mhm, jetzt wo ich das Problem genauer geschildert habe kommt mir eine Idee… Vielleicht ist es ja möglich, ebenso wie bei der Tomcat Installation beim Autorun abzufragen, ob die Variable JAVA_HOME gesetzt ist und wenn nicht diese temporär auf ein JRE auf der CD zu lenken. Ich denke, dass versuche ich daheim einmal.
Hat da schon jemand Erfahrung damit?

Nun hat aber an den Rechnern der Benutzer nicht
unbedingt jeder Java installiert. Deshalb möchte ich eine
Applikation erstellen, die keine Java Installation
vorraussetzt. Hat jemand eine Ahnung ob das geht?

Ja, das geht, indem du die Java-Installation mitlieferst und sie entweder mit einem geeigneten Installer installierst oder indem du sie mit deiner Anwendung direkt von einer CD startest.

Momentan bin
ich an einer CD mit installationsfreiem Tomcat-Server und
einer eignenen Java-Installation. Die funktioniert auch
alleine.

Eben… wozu dann überhaupt der Tomcat und das JSP-Zeug? Schreib doch eine ganz normale Java-Anwendung.

Ansonsten würde ich dir empfehlen, diese Art Fragen in der Newsgroup de.comp.lang.java zu stellen.

Gruß,
Michael

Sorry, k. A.!!!

Vielen Dank für die hilfreiche Antwort,
dann werde ich Java direkt von der CD mit starten :smile:

Hallo,

soweit ich mit dem Thema vertraut bin braucht Java die virtuelle Maschine auf dem jeweiligen Rechner, da ja z.B. auf Bibliotheken etc. zugegriffen wird. Um eine Installation wirst Du nicht herum kommen.

Gruß Fred

Hallo,

was die Lauffähigkeit des Tomcats auf CD angeht kann ich nichts sagen, das hab ich noch nie versucht. Da aber auch Logfiles geschrieben werden und die JSPs kompiliert werden müssen (ok, nur einmalig, sie ändern sich ja nicht) könnte da etwas konfigurationsaufwand notwendig sein.

Mit JSPs auf das (serverseitige) Filesystem zugreifen ist dagegen kein Problem, du kannst mit JSP/Servlet alles machen was mit Java geht. Evlt. sind im Tomcat einige Parameter zu konfigurieren wenn die JSP auf Dateien außerhalb des eigenen Webapp Verzeichnisses zugreifen will (Provider für JSP fähige Webserver lassen das nicht zu), bei mir hat das allerdings spontan funktionier. Bin mir aber nicht sicher ob das die Defaulteinstellung ist, oder ob ich die irgenwann mal geändert habe.

 Directories/Files in c:/ 

File root = new File(„c:/“);
for(File f : root.listFiles())
{
out.println("<li> - " + f.getName() + „</li>“);
}

HTH
Heavy