2010-10-03 4 views
2

Cette question est en relation avec "Java Web Application - File Upload".
Est-il possible pour une application Web de lire un fichier à partir du système de fichiers hôte? Je pense que pour des raisons de sécurité, la réponse est non - mais je suppose qu'il devrait être possible de lire les fichiers dans les répertoires sous la racine de l'application.
Si tel est le cas, quelqu'un pourrait-il fournir un exemple de fragment de code?
MerciApplication Web Java - Fichier Lire

Répondre

0

J'utilise le web-cadre Apache Wicket, déployé sur le conteneur Web app Glassfish 2, et cet extrait fonctionne très bien pour moi:

//Read file content 
FileInputStream in = new FileInputStream(new File("absolute path")); 
byte[] bt = new byte[(int) file.length()]; 
in.read(bt); 
in.close(); 
return bt; 

pourrait toutefois être lié à la façon le serveur d'applications Web est configuré, votre kilométrage peut donc varier.

+0

Hi. Le "chemin absolu" est-il inférieur à WEB-INF? Ou est-ce un emplacement aléatoire du système de fichiers. Avez-vous dû configurer des autorisations spéciales dans le gestionnaire de sécurité? –

+0

C'est un emplacement aléatoire sur le système de fichiers. Je n'ai pas touché le responsable de la sécurité, donc je travaille avec ce que l'instance de Glassfish m'a donné. Je ne suis pas celui qui administre ce serveur cependant, donc je ne peux pas dire quelles sont les restrictions de sécurité en place (mais j'ai entendu des rumeurs disant qu'il est exécuté en tant que root .. = \\) – Tim

Questions connexes