IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Servlets/JSP Java Discussion :

Détection du système à partir d'une servlet


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 8
    Par défaut Détection du système à partir d'une servlet
    Bonjour,

    Est-il possible de détecter le système sur lequel une servlet est en train de s"exécuter ?

    J'ai une servlet qui permet d' uploader des fichiers sur un serveur windows. Tout est ok.
    Sur un système linux, il n'y a pas d'unité. Je ne vois pas comment gérer un chemin pour ces 2 systèmes.

    Si vous avez une piste, c'est super.

    Merci
    Thierry

  2. #2
    Membre chevronné
    Homme Profil pro
    Ed Nat
    Inscrit en
    Janvier 2013
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ed Nat
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 325
    Par défaut
    Bonjour,
    tu peux éviter de détecter le système,
    si tu utilises :
    getServletContext().getRealPath("/monDossier")
    tu dois obtenir le chemin réel de monDossier à partir de la racine de ton appli web, sans avoir à jongler avec les différences Windows/linux sur l'expression des paths

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 8
    Par défaut Detection du systeme à partir d'une servlet
    Merci pour ta réponse, mais j'ai déjà utilisé cette technique.
    Le problème est qu'a chaque déploiement de l'application, il faut que je pense à sauvegarder le dossier qui contient les fichiers et je dois le restaurer ensuite.

    Peut être que j'utilise mal cette technique ?

    Thierry

  4. #4
    Membre chevronné
    Homme Profil pro
    Ed Nat
    Inscrit en
    Janvier 2013
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ed Nat
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 325
    Par défaut
    Ton dossier d'upload n'est pas un sous dossier du WebContent de ton appli web ?

  5. #5
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 8
    Par défaut Detection du systeme à partir d'une servlet
    La fois ou j'ai utilisé cette technique, mon sous dossier était dans le web content de mon appli.
    C'est pourquoi, j'ai abandonné cette solution.
    J'ai donc créé un dossier à la racine du serveur, ce qui fonctionne bien sous windows. Je dois déployer cette application sous linux est la, je crains que ma servlet ne fonctionne plus.

    Thierry

  6. #6
    Membre chevronné
    Homme Profil pro
    Ed Nat
    Inscrit en
    Janvier 2013
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ed Nat
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 325
    Par défaut
    tu peux utiliser une méthode de ce genre pour avoir le realPath de ton serveur (il y a peut-être d'autres moyens plus simples...):
    En gros, je prend le realpath du contexte de la servlet :
    par exemple : /usr/share/tomcat7/monsite
    , duquel j'enlève le path relatif du contexte : /monsite

    pour obtenir : /usr/share/tomcat7

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    private String getServerRealPath(ServletContext context) {
    	String realPath = context.getRealPath("");
    	String contextPath = context.getContextPath();
    	contextPath = contextPath.replaceFirst("^\\/(.*?)", "$1");
    	realPath = realPath.replace(contextPath, "");
    	return realPath;
    }
    Tu peux utiliser ensuite getServerRealPath pour spécifier ton dossier upload

    String uploadFolder=getServerRealPath(getServletContext())+"uploadFolder";

Discussions similaires

  1. Java/XML generer un fichier XML a partir d'une Servlet
    Par fabricew59 dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 03/04/2007, 11h43
  2. Arrêter à la Webapp à partir d'une servlet
    Par Coulon Arnaud dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 30/06/2006, 09h45
  3. Réponses: 2
    Dernier message: 12/05/2006, 18h49
  4. [SERVLET]Appel d'un fichier à partir d'une servlet
    Par fchafia dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 17/03/2005, 12h21
  5. [POI] Usage à partir d'une Servlet
    Par fredmorvant29 dans le forum Servlets/JSP
    Réponses: 8
    Dernier message: 19/07/2004, 15h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo