-
Accès répertoire partagé
Bonjour,
j'ai des postes clients (déploiement JNLP), sur du Window, Mac, Linux... qui doivent avoir accès à un répertoire share qui est sur un serveur Linux, avec login password sur le share. Le serveur a un Samba dessus.
Quand je suis sur mon poste de dev Window 7 est que j ouvre avec mon browser microsoft le répertoire share (donc je log + password), le client Java accède sans prb au répertoire share (avec les objets File classique). Sinon pas d’accès autorisé.
Y a t-il une façon de remplacer cette action manuelle de façon programmatique au lancement du client (je veux pas réécrire tout mon code !).
Est ce que ça va être fonction des OS des postes clients ?
Meci
-
Ma réponse n'a rien a voir avec java, mais pourquoi ne faites-vous pas tout simplement un script vbs qui map votre dossier share sur une lettre, S par exemple. Dasn votre code, ce sera comme s'il s'agissait d'une ressource locale, S:\chemin\fichier ?
Vous placez ce script dans le menu démarrage de votre menu démarrer de sorte qu'il s'exécute à chaque ouverture de session, et le tour est joué...
-
Pardonnez-moi, je viens de me rendre compte que vous avez plusieurs OS, et ce que je vous propose ne concerne que Windows, donc c'est inutile.
Par contre, sous chacun des ces OS il y a la possibilité d'établir une connexion permanente vers une ressource partagée SAMBA. Sous Windows, il suffit de cocher la caser "rétablir la connexion au redémarrage", pour les deux autres je ne sais pas, mais il y a certainement moyen de faire la même chose. Evidement, cela vous imposera de passer sur tous les postes pour mettre cette connexion en place.
Ce que je penses pouvoir affirmer, c'est que vous ne pourrez jamais établir la connexion vers SAMBA depuis votre programme Java. Sauf si vous intégré la différence d'OS, après tout, ils ne sont que trois.
Dans ce cas, votre code devra d'abord identifier son hôte (Windows, MacOS ou Linux), puis en fonction de cela, il pourra toujours réaliser la commande shell (un "net use S: \\serveur\ressource /user:utilisateur /password:mdp et je sais plus quel paramètre pour persister") via un Runtime.getRuntime().exec("commande shell");
Enfin, c'est une idée.
Quoi qu'il en soit, je ne crois pas qu'il soit possible d'établir ce genre de connexion depuis Java...
-
Salut,
tu peux résoudre programmatiquement ton problème en utilisant l'API JCIFS
.
-
Excellent !
Je ne connaissais pas, je viens de voir et de gouter, merci joel.drigo. :ccool: