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 :

Exécuter Webscript avec fichier xml en paramètre


Sujet :

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

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 201
    Points : 88
    Points
    88
    Par défaut Exécuter Webscript avec fichier xml en paramètre
    Bonjour,

    Je souhaiterais exécuter un webscript (java back-bean) prenant un fichier xml en paramètre, à partir d'un bout de code java. J'ai réussi à partir d'un formulaire http tout simple (multipart/formdata) mais j'ai quelques difficultés à le faire en java.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     File fileConsigne = XmlDocumentParserImpl.saveXmlFile(messageRetour, true, "RETOUR_COMMANDE.xml");
                           URL url = new URL("http://localhost:8080/projet/service/ui/bean/commande");
     
                            URLConnection conn = url.openConnection();
     
                            FileInputStream in = new FileInputStream(fileConsigne);
                            byte[] data = new byte[(int) fileConsigne.length()];
                            in.read(data);
                            in.close();
     
                            conn.setDoInput(true);
                            conn.setDoOutput(true);
                            conn.setUseCaches(false);
                            conn.setRequestProperty("Content-Type", "text/xml");
     
                            DataOutputStream out = new DataOutputStream(conn.getOutputStream());
                            out.write(data, 0, data.length);
                            out.flush();
                            out.close();
    Le code java s'exécute normalement et ne me retourne aucune erreur mais je m'attendais à recevoir dans ma page html exécutant mon code java le retour ftl de mon webscript.

    Merci d'avance pour vos conseils et réponse.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 201
    Points : 88
    Points
    88
    Par défaut
    C'est résolu :

    - D'une j'ai utilisé la classe PostMethod plus propre.
    - De deux la déclaration xml de mon webscript était paramétrée avec "gest" pour l'authentification.. Donc soit on met à "none", soit on spécifie dans la connection le login et mot de pass.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
                        PostMethod filePost = null;
     
                        try {
                            filePost = new PostMethod("http://localhost:8080/projet/service/ui/bean/commande");
     
                            LOG.debug("Uploading " + fileConsigne.getName());
     
                            Part[] parts = {new FilePart(fileConsigne.getName(), fileConsigne)};
     
                            filePost.setRequestEntity(new MultipartRequestEntity(parts, filePost.getParams()));
     
                            HttpClient client = new HttpClient();
                            client.getHttpConnectionManager().getParams().setConnectionTimeout(5000);
                            UsernamePasswordCredentials creds = new UsernamePasswordCredentials(USER, PASS);
                            client.getState().setCredentials(AuthScope.ANY, creds);
     
                            int status = client.executeMethod(filePost);
     
                            if (status == HttpStatus.SC_OK) {
                                LOG.debug("Upload complete, response=" + filePost.getResponseBodyAsString());
                            } else {
                                LOG.debug("Upload failed, response=" + HttpStatus.getStatusText(status));
                            }
                        } catch (Exception ex) {
                            LOG.debug("Error: " + ex.getMessage());
                        } finally {
                            filePost.releaseConnection();
                        }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AJAX] variable avec fichier XML
    Par Lilliputien dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 17/09/2008, 11h47
  2. Remplir un data grid avec fichier XML externe
    Par skunkies dans le forum Flex
    Réponses: 5
    Dernier message: 19/08/2008, 18h50
  3. Fichier XML en paramètre
    Par Oncle_Pete dans le forum Langage
    Réponses: 4
    Dernier message: 13/08/2008, 18h23
  4. Création QCM avec fichier xml
    Par Ella68 dans le forum Flash
    Réponses: 1
    Dernier message: 29/05/2007, 18h44
  5. [VBA][Excel]Exécution macro avec fichiers source
    Par ouezon dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 24/12/2005, 00h00

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