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

2D Java Discussion :

[JFreeChart] Comment enregistrer le graphe genéré


Sujet :

2D Java

  1. #21
    Membre du Club Avatar de bylka
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    184
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2007
    Messages : 184
    Points : 60
    Points
    60
    Par défaut
    Bonjour
    voila le code de l'Action
    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception {
     
    JFreeChart jfreechart = ChartFactory.createPieChart3D("Ventes Globales ", defaultPieDataset, true, true, false);
     
    		PiePlot3D piePlot3d = (PiePlot3D)jfreechart.getPlot();
    		piePlot3d.setStartAngle(290D);
    		piePlot3d.setDirection(Rotation.ANTICLOCKWISE);
    		piePlot3d.setForegroundAlpha(0.60f);
    		piePlot3d.setInteriorGap(0.33);
    		piePlot3d.setNoDataMessage("No data to display");
    		piePlot3d.setLabelGenerator(new StandardPieSectionLabelGenerator("{0}"));
    		piePlot3d.setLabelGenerator(new StandardPieSectionLabelGenerator("{0}={1} ({2})"));
     
    		TextTitle textTitle = jfreechart.getTitle() ;
    		textTitle.setFont(new Font("Arial", Font.BOLD, 15));
     
    		int largeur = 1000 ;
    		int hauteur = 400 ;
     
    		ChartRenderingInfo chartRenderingInfo = new ChartRenderingInfo(new StandardEntityCollection());
     
    		String filename = ServletUtilities.saveChartAsJPEG(jfreechart, largeur, hauteur, chartRenderingInfo, request.getSession());
     
    		Graphe graphe = this.initImage(request, chartRenderingInfo, filename);
     
    		// sauvgarder le graph en PDF sur le serveur
     
    		File fileName = new File( "d:\\temp\\jfreechart.pdf");
     
    		saveChartAsPDF(fileName, jfreechart, 400, 300, new DefaultFontMapper());        
     
                    //sauvgarder le graph sur le client 
     
     
     		String leNomDeFichier="d:\\temp\\jfreechart.pdf";
    		File file = new File(leNomDeFichier);
    		response.setContentType("unknown/unknown");
    		response.setHeader("Content-Disposition", "attachment; filename= \"" + leNomDeFichier + "\"+");
    		InputStream in = new FileInputStream(file);
    		ServletOutputStream out = response.getOutputStream();
    		try
    		{
    		    int bit = in.read();
    		    while( (bit) >= 0 )
    		    {
    		       out.write(bit);
    		       bit = in.read();
    		    }
    		}
    		catch (Throwable t)
    		{
     
    		 }
    		out.flush();
    		out.close();
    		in.close();
     
    	return mapping.findForward("s");
    		}

  2. #22
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Change filename="jfreechar.pdf" (sans le chemin d'accès)

  3. #23
    Membre du Club Avatar de bylka
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    184
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2007
    Messages : 184
    Points : 60
    Points
    60
    Par défaut
    excuse moi OButterlin,mais j'ai changé le filename (sans le chemin d'accés) mais pas de changement!

  4. #24
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Ben là, je sais pas...
    Je fais la même chose dans une application et ça fonctionne correctement.

    Tu peux essayer une dernière chose :

    response.setContentType("application/pdf");

  5. #25
    Membre du Club Avatar de bylka
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    184
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2007
    Messages : 184
    Points : 60
    Points
    60
    Par défaut
    Merci pour ton aide OButterlin
    c'est bon ,la modification response.setContentType("application/pdf");ma réglé le Probléme

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Réponses: 2
    Dernier message: 03/06/2014, 13h41
  2. Réponses: 9
    Dernier message: 25/07/2007, 22h24
  3. [Débutant] Comment enregistrer un graphe affiche sur une interface graphique ?
    Par tonio70140 dans le forum Interfaces Graphiques
    Réponses: 9
    Dernier message: 05/07/2007, 16h08
  4. Réponses: 1
    Dernier message: 16/04/2007, 13h19
  5. Comment enregistrer un stream de longueur fixe ?
    Par Alcarbone dans le forum MFC
    Réponses: 5
    Dernier message: 13/04/2003, 21h14

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