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 :

XML Vers Java ?


Sujet :

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

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2011
    Messages : 1
    Points : 1
    Points
    1
    Par défaut XML Vers Java ?
    Bonjour,

    Je vous explique mon petit soucis, je suis en stage en développement après un Dut informatique et ma tache consiste à réaliser une documentation d'un ensemble de procédure. Jusque la rien de bien méchant.

    La documentation est stockée dans une base de donnée et on veux que j'insère cette documentation dans du Fichier Word (en utilisant IMPÉRATIVEMENT) un modèle (unique et qui ne changera pas, enfin en théorie...).
    Bon bah vis a vis du modèle je me suis dis, je vais utiliser XML, ca me permettra d'insérer simplement, ça j'y arrive sans soucis !

    Mon problème est dans l'autre sens, dans l'idéal, mon application devrait permettre qu'un utilisateur utilise le modèle pour créer une documentation nouvelle, ensuite l'application devrait récupérer les données saisies et les stocker dans la base de donnée (puisque en théorie elle n'y seront pas ou auront été modifiées)

    Et c'est la que je bloque, comme on dit, en informatique dans 80% du temps le problème est entre le clavier et la chaise, et moi j'y ai droit ici, comment faire en sorte que si un utilisateur ne respecte pas a 200% le modèle (sans changer l'organisation d'un pouce), mon application récupère les données ?

    J'avais pensé a mettre des balises XML sans effet dans mon code qui serviraient de repère a mon programme mais comme il s'agit de balises inexistantes en réalité, l'enregistrement du fichier (par Word) supprime ces balises superflues et mon programme perds tout repère de lecture...

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Euh, tu sais, au moment où tu passes par la case Word, il n'y a plus de traitement automatisé de l'information, c'est aussi simple que ça.

    Word n'est pas une base de données ni un format conteneur de données. C'est un traitement de texte. Tu te mets devant et tu tapes ton texte. C'est ça, que ça peut faire, rien d'autre. Alors oui, on peut générer des fichiers Word automatiquement, mais :
    - Ce n'est pas prévu pour, et quand on veut visser un boulon avec un marteau, on tombe dans pas mal de déconvenues.
    - Écrire, oui. Lire, non.

    Une possibilité serait de mettre les "balises" dont tu as besoin, non pas sous forme de balise, mais sous forme de contenu visible dans le document. Ainsi, Word ne le perdra pas. Je conseille du texte, car c'est la seule chose pas trop compliquée à retrouver à la lecture automatique d'un document Word.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 083
    Points
    7 083
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Euh, tu sais, au moment où tu passes par la case Word, il n'y a plus de traitement automatisé de l'information, c'est aussi simple que ça.
    Faux, prends exemple sur Reqtify :-)

    Citation Envoyé par thelvin Voir le message
    Alors oui, on peut générer des fichiers Word automatiquement, mais :
    - Ce n'est pas prévu pour, et quand on veut visser un boulon avec un marteau, on tombe dans pas mal de déconvenues.
    Et le publipostage ?

    Citation Envoyé par thelvin Voir le message
    Word n'est pas un format conteneur de données. C'est un traitement de texte.
    Le texte et sa mise en forme est une donnée en soit.

    Citation Envoyé par thelvin Voir le message
    Une possibilité serait de mettre les "balises" dont tu as besoin, non pas sous forme de balise, mais sous forme de contenu visible dans le document. Ainsi, Word ne le perdra pas. Je conseille du texte, car c'est la seule chose pas trop compliquée à retrouver à la lecture automatique d'un document Word.
    Les styles sont une forme de balisage et il est possible de marquer le document avec du contenu invisible à l'aide des champs.

    De plus, à partir de la version 2007, il est possible de stocker le document dans un format XML ce qui simplifie grandement sa manipulation (J'ai pas dit que c'était simple ! Mais plus simple).

    Globalement, si c'est pour avoir du Word en entrée et du Word en sortie, pourquoi ne pas stocker le Word dans la base de données ?
    Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
    Ceylon : Installation - Concepts de base - Typage - Appels et arguments

    ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
    Une solution vous convient ? N'oubliez pas le tag
    Signature par pitipoisson

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Avec un prestataire supplémentaire, tel que ce reqtify, je ne dis pas. Mais il en faut un. Je n'en connais pas. Ça peut faire ça, reqtify ? C'est prenable en main ? Tu le conseilles pour résoudre le problème posé ?

    Et, en effet, Word fait certes plus de choses que je ne le dis (tel que le publipostage, mis en corrélation avec une BDD), mais rien qui puisse aider la question présente.

    Le texte et sa mise en forme, sont des données. Mais pas n'importe quelles données. Ce sont des données dont les règles sont décidées par Word. En soi c'est déjà insuffisant pour s'en servir pour gérer des données arbitraires.
    Mais en plus, les nombreuses mises en forme et réorganisations automatiques, font que ce n'est pas fiable pour conserver l'information. Au moins pas avec les styles ni avec du texte que Word tendrait facilement à remettre en forme.

    *Soupir* ce que je veux dire c'est qu'il n'y a pas lieu de creuser si loin dans le détail, je peux le faire mais nous avons déjà atteint la démonstration que c'est pas assez fiable. Sauf éventuellement avec ce reqtify ou un truc du genre.

    Globalement, si c'est pour avoir du Word en entrée et du Word en sortie, pourquoi ne pas stocker le Word dans la base de données ?
    Certes, je dois avouer que je n'ai pas compris le détail du besoin.
    J'ai cru comprendre que la demande est d'écrire des données précises dans un fichier Word, dans le but de pouvoir les relire sans perte, en survivant une ouverture et réécriture dans Word.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 083
    Points
    7 083
    Par défaut
    A template et version de Word constante, on pourra supposer que le format est exploitable, surtout avec Open XML.

    Reqtify et ses modules sont propriétaires. Il est toujours possible de trouver soit un produit ayant une fonctionnalité équivalente, soit un arrangement commercial.
    Le besoin de Reqtify me semble correspondre au sien:
    Document binaire (Excel, Word, PDF) -> Document structuré (XML, BDD, POJO) -> Document binaire (Excel, Word, PDF).
    La méthode adoptée me paraît bonne:
    1. Transformation du document "binary" en "plain text"
    2. Analyse du document "plain text"
    3. Génération du document structuré
    4. Sauvegarde de la structure


    Sinon solutions plus pérennes : OpenOffice (ou ses forks) ou un éditeur dédié à ces documents.
    Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
    Ceylon : Installation - Concepts de base - Typage - Appels et arguments

    ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
    Une solution vous convient ? N'oubliez pas le tag
    Signature par pitipoisson

Discussions similaires

  1. de XML vers Java sous ACCELEO
    Par stevensen2 dans le forum Outils
    Réponses: 0
    Dernier message: 06/04/2012, 00h46
  2. XML vers java avec XSLT ?
    Par anime dans le forum XML/XSL et SOAP
    Réponses: 18
    Dernier message: 28/04/2011, 20h24
  3. XML vers java
    Par miled dans le forum XML/XSL et SOAP
    Réponses: 8
    Dernier message: 01/04/2011, 15h37
  4. XML vers java
    Par miled dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 28/03/2011, 14h44
  5. XML vers java
    Par MicroPuce dans le forum Services Web
    Réponses: 1
    Dernier message: 18/08/2006, 16h59

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