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

Format d'échange (XML, JSON...) Java Discussion :

Probleme JDOM + Thread


Sujet :

Format d'échange (XML, JSON...) Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 2
    Par défaut Probleme JDOM + Thread
    Bonjour,

    Je vous explique mon probleme :

    - je dois parser plusieurs centaines de fichier struts-config.xml, pour cela j'utilise la bibliotheque JDOM.
    En premier lieu dans une boucle je parse chacun de mes fichiers sans problemes, le soucis étant que cela prends près de 20 min.

    Pour améliorer cela j'ai déplacer ma méthode pour parser dans une classe heritant de thread. Maintenant je lance un thread par fichier afin d'accélerer le traitement . Le probleme vient du fait que cela ne fonctionne pas toujours..

    Une fois cela fonctionne , et de temps en temps j'ai des erreurs du type :
    - java.net.SocketException: Unexpected end of file from server
    - java.net.BindException: Address already in use: connect

    Le code d'appel des threads :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    for(int  j=0; j<listeSousDossier.length-1;j++)
    {
       if(listeSousDossier[j].isDirectory() 
         && !listeSousDossier[j].isHidden() 
         && listeSousDossier[j].getPath().contains("_Hub")
         && listeSousDossier[j].getPath().contains("cc"))
     {
         String name =listeSousDossier[j].getName();
         parseStruts t = new parseStruts(group,"Thread"+String.valueOf   (j),listeSousDossier[j].getPath() + "/struts/struts-config.xml", name);
        t.start();
     
     }
    }
    Pour parser j'utilise SAXBuiler + le path pour creer le Document JDOM
    Je ne sais pas si mon explication est suffisante mais si quelqu'un à une idée ..

    Cordialement

  2. #2
    Membre chevronné
    Inscrit en
    Juillet 2006
    Messages
    534
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 534
    Par défaut
    Bonjour,

    Peut-on avoir plus informations avec ton code? L'endroit où l'erreur s'est produite.

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 2
    Par défaut
    Bonjour,

    Pour le moment ce problème est mis de coté, j'ai refait une classe en prenant SAX a la place de JDOM, le problème étais le même.

    Le problême est intermittent et ne se produit pas sur les mêmes fichiers. J'ai reduis le nombre de threads que je lançais et les fois ou les erreurs apparaissent diminue. Je pense à un problème de lecture des fichiers ( trop de fichiers ouverts en même temps ? )

Discussions similaires

  1. Probleme de threads et de pipes
    Par Marc san dans le forum C
    Réponses: 7
    Dernier message: 22/02/2006, 21h32
  2. Probleme de threads
    Par cryptorchild dans le forum Langage
    Réponses: 7
    Dernier message: 02/02/2006, 02h27
  3. Problème de threads avec pthread_create
    Par 180degrés dans le forum Linux
    Réponses: 6
    Dernier message: 19/12/2005, 12h07
  4. Probleme fermeture Thread
    Par Raton dans le forum MFC
    Réponses: 4
    Dernier message: 29/09/2005, 09h51
  5. [Kylix] Problème de thread
    Par moltov dans le forum EDI
    Réponses: 1
    Dernier message: 22/06/2005, 13h28

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