2009-02-26 11 views
1

Kann JNDI in einem Java-Servlet verwendet werden, um auf das Dateisystem auf dem lokalen Rechner oder einem Remote-Rechner zuzugreifen?Kann ich mit JNDI auf Dateien/deren Inhalt zugreifen?

Ich bin in der Lage, lokale Verzeichnisse/Dateien mit ihm zu binden, aber nicht in der Lage, einen Mechanismus (falls vorhanden) zu finden, um den Inhalt der Datei zu lesen/ändern.

Die Dateien sind einfache Textdateien.

Bitte sagen Sie mir, wenn es möglich ist, und wie?

Antwort

0

JNDI ist ein API (das heißt eine Schnittstelle) - Implementierungen in variieren können, was sie ermöglichen es Ihnen zu tun. Ich denke, dass im Allgemeinen JNDI-Implementierungen sind für die Ressourcenallokation und Entdeckung und nicht für diesen Zweck verwendet.

1

Wie der Name schon sagt, bietet JNDI Java-Anwendungen Zugriff auf Verzeichnis- und Namensdienste. Es dient zum Abrufen von Ressourcennamen aus dem Verzeichnis. Java-Anwendungen verwenden in der Regel JNDI, um JDBC-Datenquellen, E-Mail-Sitzungen und Benutzer zu authentifizieren und zu autorisieren. Ich nehme an, Sie könnten ein benutzerdefiniertes Objekt in dem Verzeichnis speichern, aber das ist nicht der empfohlene Weg der Dinge.

Für lokale Dateien können Sie eine String-Ressource mit dem Namen und Pfad der Datei hinzufügen, sie mit JNDI abrufen und mit Standardmitteln lesen/schreiben.

+0

Kann 'eine String-Ressource mit dem Namen und Pfad der Datei' für ein Remote-Dateisystem hinzugefügt werden? –

+0

Wenn dies eine öffentliche URL ist, ja. Sie könnten das verwenden und die Datei herunterladen, um sie zu lesen. Sie können es jedoch nicht bearbeiten, es sei denn, das entfernte System lässt etwas wie FTP oder HTTP PUT zu. – kgiannakakis