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

Développement Web en Java Discussion :

Comment downloader un fichier xml qui contient le text d'un InputTextArea ?


Sujet :

Développement Web en Java

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 6
    Points : 11
    Points
    11
    Par défaut Comment downloader un fichier xml qui contient le text d'un InputTextArea ?
    Bonjour,

    J'utilise Primefaces et je souhaiterais pouvoir downloader un fichier xml qui contient le texte que j'aurais écrit dans un inputtextarea.
    La partie téléchargement fonctionne mais je ne sais pas comment faire pour que le fichier xml contienne ce que j'ai écris dans l'input.
    Est ce que un développeur saurait m'aider svp ?
    Merci de bien vouloir trouver ci après mon code :

    La vue :
    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
    30
    31
    32
    33
    34
    35
    36
    37
    <!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:p="http://primefaces.org/ui">
     
     
     <h:head>
            <title>File Download</title>      
    </h:head>
        <h:body>
            <p:dialog modal="true" widgetVar="statusDialog" header="Status" draggable="false" closable="false" resizable="false">
                <p:graphicImage value="/images/loading11.gif" />          
            </p:dialog>
     
            <p:inputTextarea id ="mytheinput"  value="#{fileDownloadView.mytext}" cols="115" autoResize="true" rows="20"  />  
     
            <h:form>
                <p:commandButton value="Download" ajax="false" onclick="PrimeFaces.monitorDownload(start, stop);" icon="ui-icon-arrowthick-1-s">
                    <p:fileDownload value="#{fileDownloadView.file}" />
                </p:commandButton>
            </h:form>
     
    <script type="text/javascript">
    function start() {
        PF('statusDialog').show();
    }
     
    function stop() {
        PF('statusDialog').hide();
    }
    </script>
     
     
        </h:body>
    </html>
    Le bean :
    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
    @ManagedBean(name="fileDownloadView")
    public class FileDownloadView {
     
        private StreamedContent file;
        private String mytext;
     
        public FileDownloadView() {  
            InputStream stream = ((ServletContext)FacesContext.getCurrentInstance().getExternalContext().getContext()).getResourceAsStream(mytext);
            file = new DefaultStreamedContent(stream, "xml", "yourfile.xml");
        }
     
        public StreamedContent getFile() {
            return file;
        }
     
        public String getMytext() {
            return mytext;
        }
     
    }
    Cordialement.

  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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        public FileDownloadView() {  
            InputStream stream = new ByteArrayInputStream(myText.getBytes(StandardCharsets.UTF_8));
            file = new DefaultStreamedContent(stream, "xml", "yourfile.xml");
        }
    Devrais faire l'affaire.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 6
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        public FileDownloadView() {  
            InputStream stream = new ByteArrayInputStream(myText.getBytes(StandardCharsets.UTF_8));
            file = new DefaultStreamedContent(stream, "xml", "yourfile.xml");
        }
    Devrais faire l'affaire.
    Bonjour Tchize_,

    Merci pour votre message, j'ai essayé mais j'obtiens l'erreur suivante quand je compile : Impossible d’instancier la classe «FileDownloadView».

  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
    Effectivement, il faut déplacer le code dans le getFile(), pour que myText puisse avoir une chance de ne pas être null.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 6
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    Effectivement, il faut déplacer le code dans le getFile(), pour que myText puisse avoir une chance de ne pas être null.
    Merci pour votre aide,

    Cordialement.

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

Discussions similaires

  1. Création d'un fichier xml qui contient la compilation de maven
    Par jockhip12 dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 26/08/2011, 15h03
  2. Réponses: 4
    Dernier message: 20/04/2011, 10h39
  3. Réponses: 1
    Dernier message: 03/12/2009, 22h42
  4. Comment utiliser un fichier .java qui contient un package
    Par mobi_bil dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 01/03/2009, 13h30

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