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

Applets Java Discussion :

affichage de mon applet Jfree : probleme


Sujet :

Applets Java

  1. #1
    Membre du Club
    Inscrit en
    Mai 2007
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 79
    Points : 55
    Points
    55
    Par défaut affichage de mon applet Jfree : probleme
    Bonsoir à toutes et à tous
    Je profite de cette veille de jour férié pour vous demander vos services (encore une fois ). J'ai (enfin) réussi a utiliser Jfree pour créer de jolis graphe en java. Mon idée est de mettre ceci sur le web, donc d'en faire des applets ...
    J'ai repris (texto) un code trouvé pour m'initier un peu à cette technique (affichage de 4 camameberts)

    J'utilise donc pour cela Eclipse 3.2.1 :
    - je crée un nouveau projet (je l'appelle "courbe"),
    - j'ai ajouté les 2 fichiers jars externes ("jcommon-1.0.9.jar" et "jfreechart-1.0.5.jar")
    - un nouveau package ("com.javasrc.charts),
    - je crée une classe ("PieChartExample") qui contient un main ...

    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
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
     
    package com.javasrc.charts;
     
    // Import the Swing classes
    import java.awt.*;
    import javax.swing.*;
     
    // Import the JFreeChart classes
    import org.jfree.chart.*;
    import org.jfree.chart.plot.*;
    import org.jfree.data.general.*;
     
    public class PieChartExample extends JPanel
    {
      // Holds the data
      private DefaultPieDataset dataset = new DefaultPieDataset();
     
      // Create a set of charts
      private JFreeChart chart1;
      private JFreeChart chart2;
      private JFreeChart chart3;
      private JFreeChart chart4;
     
      // Create a set of panels that can show charts
      private ChartPanel panel1;
      private ChartPanel panel2;
      private ChartPanel panel3;
      private ChartPanel panel4;
     
      public PieChartExample()
      {
        // Initialize the dataset
        dataset.setValue( "California", new Double( 10.0 ) );
        dataset.setValue( "Arizona", new Double( 8.0 ) );
        dataset.setValue( "New Mexico", new Double( 8.0 ) );
        dataset.setValue( "Texas", new Double( 40.0 ) );
        dataset.setValue( "Louisiana", new Double( 8.0 ) );
        dataset.setValue( "Mississippi", new Double( 4.0 ) );
        dataset.setValue( "Alabama", new Double( 2.0 ) );
        dataset.setValue( "Florida", new Double( 20.0 ) );
     
        // Create the charts
        chart1 = ChartFactory.createPieChart(
          "Driving Time Spent Per State (Flat Pie Chart)", // The chart title
          dataset,         // The dataset for the chart
          true,          // Is a legend required?
          true,          // Use tooltips
          false          // Configure chart to generate URLs?
        );
        chart2 = ChartFactory.createPieChart(
          "Driving Time Spent Per State (Exploded Pie Chart)", // The chart title
          dataset,         // The dataset for the chart
          true,          // Is a legend required?
          true,          // Use tooltips
          false          // Configure chart to generate URLs?
        );
        PiePlot plot = ( PiePlot )chart2.getPlot();
        plot.setExplodePercent( 3, 0.25 );
     
        chart3 = ChartFactory.createPieChart3D(
          "Driving Time Spent Per State (3D Pie Chart)", // The chart title
          dataset,         // The dataset for the chart
          true,          // Is a legend required?
          true,          // Use tooltips
          false          // Configure chart to generate URLs?
        );
        chart4 = ChartFactory.createPieChart3D(
          "Driving Time Spent Per State (3D with Transparency)", // The chart title
          dataset,         // The dataset for the chart
          true,          // Is a legend required?
          true,          // Use tooltips
          false          // Configure chart to generate URLs?
        );
        PiePlot3D plot4 = ( PiePlot3D )chart4.getPlot();
        plot4.setForegroundAlpha( 0.6f );
     
        // Create this panel
        this.setLayout( new GridLayout( 2, 2 ) );
        this.panel1 = new ChartPanel( chart1 );
        this.panel2 = new ChartPanel( chart2 );
        this.panel3 = new ChartPanel( chart3 );
        this.panel4 = new ChartPanel( chart4 );
        this.add( panel1 );
        this.add( panel2 );
        this.add( panel3 );
        this.add( panel4 );
      }
     
      public static void main( String[] args )
      {
        JFrame frame = new JFrame( "My Trip Driving From CA to FL..." );
        PieChartExample chart = new PieChartExample();
        frame.getContentPane().add( chart, BorderLayout.CENTER );
        frame.setSize( 640, 480 );
        frame.setVisible( true );
        frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
      }
    }
    Je l'éxécute en tant que "Java application", j'ai 4 jolis camemberts qui s'affichent.

    J'intègre donc dans le <body> de ma page html, la balise :

    <applet code="PieChartExample.class" width="640" height="480">Votre navigateur n'est pas compatible Java !</applet>


    J'upload ensuite ma page html et le fichier "PieChartExample.class" dans le même répertoire mais l'applet ne se charge pas ("Applet PieChartExample notinited").

    J'essaie d'éxécuter le fichier "PieChartExample.jaa" en tant que "Java applet" et voici les erreurs qui apparaissent dans la console :

    java.lang.ClassCastException: com.javasrc.charts.PieChartExample cannot be cast to java.applet.Applet
    at sun.applet.AppletPanel.createApplet(Unknown Source)
    at sun.applet.AppletPanel.runLoader(Unknown Source)
    at sun.applet.AppletPanel.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)


    Que faire ???

    Merci de vos réponses

    Alta

  2. #2
    Expert éminent

    Avatar de christopheJ
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 600
    Points : 8 235
    Points
    8 235
    Par défaut
    Il faut que ta classe étende JApplet et pas JPanel

Discussions similaires

  1. probleme d'affichage sur mon applet
    Par stc074 dans le forum Applets
    Réponses: 3
    Dernier message: 25/09/2010, 21h54
  2. problem d'affichage de mon applet
    Par masix dans le forum Applets
    Réponses: 1
    Dernier message: 13/11/2008, 21h03
  3. problème d'affichage de mon applet
    Par bernardjulien dans le forum Applets
    Réponses: 2
    Dernier message: 08/08/2008, 10h28
  4. probleme d affichage du texte de mon applet
    Par vava1978 dans le forum Applets
    Réponses: 1
    Dernier message: 23/11/2007, 10h59
  5. Probleme affichage de mon site
    Par Braq dans le forum Webdesign & Ergonomie
    Réponses: 15
    Dernier message: 10/08/2005, 14h08

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