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

Wildfly/JBoss Java Discussion :

JBoss et accès réseau


Sujet :

Wildfly/JBoss Java

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    716
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 716
    Points : 112
    Points
    112
    Par défaut JBoss et accès réseau
    Bonjour,

    J'ai une application qui tourne sous JBoss. Depuis celle ci je souhaite copier un fichier sur un autre serveur.

    J'ai essayer de lancer la copie en java (car j'ai mis le dossier du serveur destinataire en partage et je l'est monté comme lecteur réseau) je copie le fichier vers la destination Y:\test.txt

    Cela ne fonctionne pas car il ne trouve pas le lecteur Y...
    Erreur : Le lecteur spécifié est introuvable.

    J'ai aussi essayer de faire cela en lançant un .bat depuis jboss, même problème.
    Finalement, j'ai encore essayer de faire un net use pour monter en lecteur réseau mon serveur destination mais cela ne fonctionne pas non plus.
    J'obtient l'erreur :
    L'erreur systŠme 1312 s'est produite.
    Une ouverture de session sp‚cifi‚e n'existe pas. Elle est peut-ˆtre d‚j… termin‚e.

    Est ce que cela est possible?

    Peut on faire quelque chose avec du SAAS ou autre?

    Merci pour vos conseils.

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par franfr57 Voir le message
    Bonjour,

    J'ai une application qui tourne sous JBoss. Depuis celle ci je souhaite copier un fichier sur un autre serveur.

    J'ai essayer de lancer la copie en java (car j'ai mis le dossier du serveur destinataire en partage et je l'est monté comme lecteur réseau) je copie le fichier vers la destination Y:\test.txt

    Cela ne fonctionne pas car il ne trouve pas le lecteur Y...
    Erreur : Le lecteur spécifié est introuvable.
    C'est que Y: n'existe pas, la raison la plus simple que je vois à ça c'est que Y est monté sur ta machine de bureau, et JBoss tourne sur un autre machine....

  3. #3
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    716
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 716
    Points : 112
    Points
    112
    Par défaut
    Jboss tourne sur mon PC et Y est monté sur mon PC, cela ne fonctionne pas!
    Je pense que c'est peut être une sécurité de JBoss ou qu'il faut configurer la connection au serveur destinataire dans JBoss?

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    non, si Y: existe dans le filesystem, il est accessible. Montre nous le code java qui copie dans Y?

  5. #5
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    716
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 716
    Points : 112
    Points
    112
    Par défaut
    Voici mon code java :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    String fichierLocal = "D:/test.txt";
            String fichierDestination = "Y:/test.txt";
            InputStream in;
            OutputStream out=System.out;
            int c = 0;
            in=new FileInputStream(fichierLocal);
            out=new FileOutputStream(fichierDestination);
            while ((c=in.read())!=-1) out.write(c);
            in.close();
            out.close();
    Et l'erreur :
    java.io.FileNotFoundException: Y:\test.txt (Le chemin d'accès spécifié est introuvable)

    C'est peut être parce que JBoss est en service?

  6. #6
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    les lettres de lecteur ne sont pas, que je sache, séparée entre les différents utilisateur sous windows. donc si le user courant vois le montage, jboss devrais le voir aussi. Vous n'avez pas fermé la session de l'utilisateur ayant fait le montage, par hasard (les montages sont déruit à la fin de la session utilisateur).

    Sinon il y a l'option de faire le montage via un script de démarrage windows:

    http://support.microsoft.com/default...NoWebContent=1 pour le script au démarrage


    Code bat : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    @net use Y: \\ip_address\path password /USER:login /PERSISTENT:YES 2>> C:\autoexnt.log
    @echo %ERRORLEVEL% >> C:\autoexnt.log

    pour le montage en lui même

  7. #7
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    716
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 716
    Points : 112
    Points
    112
    Par défaut
    Non le montage est permanent, mais je sais que lorsque l'on utilise jboss/tomcat en tant que services windows il y a des choses qui ne fonctionnent pas.
    Je n'ai pas réussi à faire fonctionner le parcours d'une arborescence sur un serveur distant quand le serveur est en service.

    J'ai vu le problème sur le web (google) mais sans solution. Je pense que c'est ça le problème.

    Cependant les clients n'aiment pas lancer un .bat ils aiment que ça se lance tout seul au démarrage par un service (seule solution que j'ai trouvé pour leur faire plaisir).

  8. #8
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par franfr57 Voir le message

    Cependant les clients n'aiment pas lancer un .bat ils aiment que ça se lance tout seul au démarrage par un service (seule solution que j'ai trouvé pour leur faire plaisir).
    Mettez le .bat faisant le montage en tant que service aussi, simplement. Oui ceertaines choses ne marchent pas en service, mais l'accès à un lecteur ne devrait pas vous être interdit. Ceci dit, même un montage permanent fait dans une session utilisateur y reste lié je pense (je ne connais pas à fond le fonctionnement de windows, désolé)

    Si vous ne vous en sortez pas avec le montage, il reste l'option d'attaquer directement la couche réseau du service de partage windows en utilisant un librairie comme JCIFS, qui me semble assez simple à utiliser

    http://jcifs.samba.org/src/docs/api/

  9. #9
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    716
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 716
    Points : 112
    Points
    112
    Par défaut
    Merci je vais essayer de mettre .bat qui fait le montage en service, si ça fonctionne ça sera vraiment génial!

  10. #10
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    716
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 716
    Points : 112
    Points
    112
    Par défaut
    Et qu'est je dois faire avec la librairie JCIFS, je ne vois pas trop désolé.

    Merci encore!

  11. #11
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    l'utiliser à la place de ton outputstream si tu n'y arrive pas par le montage par exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    String fichierLocal = "D:/test.txt";
            String fichierDestination = " smb://username:password@server/share/dir/test.txt";
            InputStream in = new FileInputStream(fichierLocal);
            OutputStream out= new SmbFileOutputStream(new SmbFile(fichierDestination));
            int c = 0;
            while ((c=in.read())!=-1) out.write(c);
            in.close();
            out.close();
    suffit de lire la javadoc, elle est pas bien compliquée

  12. #12
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    716
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 716
    Points : 112
    Points
    112
    Par défaut
    En mettant le net use dans le run.bat tout en haut cela fonctionne bien!

    Cependant il y a encore un problème.

    Je lance un fichier .bat qui fait un copie sur le serveur distant. Je souhaiterais qu'après cette copie lancer un .exe. J'ai mis la commande Y:\monProgramme.exe mais cela ne fonctionne pas le programme ne s'est pas lancé sur le serveur.
    De plus il n'y a aucune erreur dans le server.log.

    Merci!

  13. #13
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    leprogramme en question n'est probablement pas prévu pour s'exécuter en tant que service.

  14. #14
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    716
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 716
    Points : 112
    Points
    112
    Par défaut
    Ah perdon le programme c'était l'installation d'adobe reader (pour tester) et il s'est installé en tache de fond sur le serveur. J'ai remarqué car j'ai vu l'icone apparaitre d'un coup sur le bureau!

    C'est vraiment génial tout fonctionne.

    Merci encore pour tes conseils précieux qui m'ont permis d'aboutir!

  15. #15
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    716
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 716
    Points : 112
    Points
    112
    Par défaut
    Je reviens car je rencontre un problème :

    Cela fonctionne bien si je démarre le service manuellement (une fois windows démarrer), le lecteur Y apparait bien !

    Mais si je met le service Jboss en démarrage automatique, au démarrage de windows le lecteur y ne se met pas !


    Il y a peut être un service qui doit être démarrer avant pour que la commande net use fonctionne non ?

    Merci pour votre aide.

  16. #16
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    716
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 716
    Points : 112
    Points
    112
    Par défaut
    Personne n'aurait une idée car je suis bloqué ?

    Merci.

  17. #17
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2012
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Bonjour,
    je suis pas un connaisseur en java, mais, peut tu essayer de changer, dans ton code java, "D:\test.txt" au lieu de "D:/test.txt" ( slash, anti-slash )
    ( Y:\test.txt au lieu de Y:/test.txt )

Discussions similaires

  1. accès réseau serveur jboss
    Par Quartus dans le forum Wildfly/JBoss
    Réponses: 6
    Dernier message: 29/02/2008, 00h11
  2. Accès réseau sous 2003
    Par jdiamsss dans le forum Serveurs (Apache, IIS,...)
    Réponses: 1
    Dernier message: 21/12/2006, 19h41
  3. Accès Réseau a une base de données Access par Visual Basic
    Par thegreatbato dans le forum VBA Access
    Réponses: 5
    Dernier message: 06/01/2006, 15h04
  4. Opendir + accès réseau local
    Par Lucier dans le forum Langage
    Réponses: 4
    Dernier message: 16/11/2005, 12h58
  5. []chemin d'accès réseau
    Par kljack dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 13/10/2005, 12h22

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