1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Erro ao executar programa em Java no NetBeans que pega dados de uma tabela e gera um grafico usando jFreeChart

Fiz 2 programas diferentes para o mesmo objetivo, criar um gráfico a partir de uma tabela. Lembrando que estou usando as bibliotecas do JfreeChart, vou lá em propriedades do projeto e adiciono elas. Segue o Código dos 2 programas.

A classe GraficoForm.java

import java.awt.BorderLayout;
import java.awt.Color;
import java.util.ArrayList;
import javax.swing.table.DefaultTableModel;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.DefaultCategoryDataset;

public class GraficoForm extends javax.swing.JFrame {

    int TotalGanho = 0, TotalPerda = 0;
    private ArrayList<Produto> lista;

    public GraficoForm() {
        initComponents();
    }

    @SuppressWarnings("unchecked")
    Generated Code

private void jButtonInserirActionPerformed(java.awt.event.ActionEvent evt) {                                               
        Produto produto = new Produto();

        String nome = jTextFieldProduto.getText();
        int producao = Integer.parseInt(jTextFieldProducao.getText());
        int perda = Integer.parseInt(jTextFieldPerda.getText());

        produto.setNome(nome);
        produto.setProducao(producao);
        produto.setPerda(perda);

        lista.add(produto);

        TotalGanho = TotalGanho + producao;
        TotalPerda = TotalPerda + perda;
        jTextFieldTotalGanho.setText(Integer.toString(TotalGanho));
        jTextFieldTotalPerda.setText(Integer.toString(TotalPerda));
    }                                              

    private void jButtonGGActionPerformed(java.awt.event.ActionEvent evt) {                                          
        // TODO add your handling code here:
        String mes = jTextFieldMes.getText();
        DefaultCategoryDataset grafico = new DefaultCategoryDataset();
        JFreeChart barchart = ChartFactory.createBarChart3D(mes, "Produção e Perda" , null , grafico, PlotOrientation.HORIZONTAL, true, true, false);

        for(int i = 0; i < jTableGrafico.getRowCount(); i++){
            String nome = jTableGrafico.getModel().getValueAt(i, 0).toString();
            int Producao = Integer.parseInt(jTableGrafico.getModel().getValueAt(i, 1).toString());            
            int Perda = Integer.parseInt(jTableGrafico.getModel().getValueAt(i, 2).toString());

            grafico.setValue(Producao, "Produção", nome);
            grafico.setValue(Perda, "Perda", nome);
        }

        CategoryPlot barchrt = barchart.getCategoryPlot();
        barchrt.setRangeGridlinePaint(Color.ORANGE);
        ChartPanel barPanel = new ChartPanel(barchart, true);
        barPanel.setSize(jPanel1.getWidth(), jPanel1.getHeight());
        barPanel.setVisible(true);
        jPanel1.removeAll();
        jPanel1.add(barPanel, BorderLayout.CENTER);
        jPanel1.validate();
        jPanel1.revalidate();
        jPanel1.repaint();
    }                                         

    private void jButtonListarActionPerformed(java.awt.event.ActionEvent evt) {                                              
        // TODO add your handling code here:
        DefaultTableModel modelo = new DefaultTableModel();
        modelo.setColumnIdentifiers(new String[]{"Produto", "Produção","Perda"});
        for(int i = 0; i < lista.size(); i++){
            modelo.addRow(new Object[]{this.lista.get(i).getNome(),
                this.lista.get(i).getProducao(),
                this.lista.get(i).getPerda()});
        }
        jTableGrafico.setModel(modelo);
    }

public static void main(String args[]) {

        Look and feel setting code (optional)

        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new GraficoForm().setVisible(true);
            }
        });
    }

    private javax.swing.JButton jButtonGG;
    private javax.swing.JButton jButtonInserir;
    private javax.swing.JButton jButtonListar;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTable jTableGrafico;
    private javax.swing.JTextField jTextFieldMes;
    private javax.swing.JTextField jTextFieldPerda;
    private javax.swing.JTextField jTextFieldProducao;
    private javax.swing.JTextField jTextFieldProduto;
    private javax.swing.JTextField jTextFieldTotalGanho;
    private javax.swing.JTextField jTextFieldTotalPerda;
}

A Classe Produto.java

public class Produto {

    private String Nome;
    private int Producao;
    private int Perda;

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
    }

    /**
     * @return the Nome
     */
    public String getNome() {
        return Nome;
    }

    /**
     * @param Nome the Nome to set
     */
    public void setNome(String Nome) {
        this.Nome = Nome;
    }

    /**
     * @return the Producao
     */
    public int getProducao() {
        return Producao;
    }

    /**
     * @param Producao the Producao to set
     */
    public void setProducao(int Producao) {
        this.Producao = Producao;
    }

    /**
     * @return the Perda
     */
    public int getPerda() {
        return Perda;
    }

    /**
     * @param Perda the Perda to set
     */
    public void setPerda(int Perda) {
        this.Perda = Perda;
    }

Erro que acontece no 1 programa (Programa compila e executa, mas quando clico em inserir ou gerar gráfico acontece o erro):

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at graficobarra.GraficoForm.jButtonInserirActionPerformed(GraficoForm.java:232)
    at graficobarra.GraficoForm.access$000(GraficoForm.java:23)
    at graficobarra.GraficoForm$1.actionPerformed(GraficoForm.java:78)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
    at java.awt.Component.processMouseEvent(Component.java:6535)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
    at java.awt.Component.processEvent(Component.java:6300)
    at java.awt.Container.processEvent(Container.java:2236)
    at java.awt.Component.dispatchEventImpl(Component.java:4891)
    at java.awt.Container.dispatchEventImpl(Container.java:2294)
    at java.awt.Component.dispatchEvent(Component.java:4713)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
    at java.awt.Container.dispatchEventImpl(Container.java:2280)
    at java.awt.Window.dispatchEventImpl(Window.java:2750)
    at java.awt.Component.dispatchEvent(Component.java:4713)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.awt.EventQueue$3.run(EventQueue.java:703)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.awt.EventQueue$4.run(EventQueue.java:731)
    at java.awt.EventQueue$4.run(EventQueue.java:729)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
CONSTRUÍDO COM SUCESSO (tempo total: 18 segundos)

O segundo programa é apenas um jFrame, bem mais comprimido:

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Rectangle;
import javax.swing.table.DefaultTableModel;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.DefaultCategoryDataset;


public class GraficoFrame extends javax.swing.JFrame {

    public GraficoFrame() {
        initComponents();
        this.centralizeFrame();
    }

    public void centralizeFrame(){
        int x, y;
        Rectangle scr = this.getGraphicsConfiguration().getBounds();
        Rectangle form = this.getBounds();
        x = (int) (scr.getWidth() - form.getWidth()) / 2;
        y = (int) (scr.getHeight() - form.getHeight()) / 2;
        this.setLocation(x, y);
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        jButtonInserir = new javax.swing.JButton();
        jScrollPane1 = new javax.swing.JScrollPane();
        jTableGrafico = new javax.swing.JTable();
        jLabel1 = new javax.swing.JLabel();
        jTextFieldMes = new javax.swing.JTextField();
        jLabel2 = new javax.swing.JLabel();
        jTextFieldTotalGanho = new javax.swing.JTextField();
        jTextFieldTotalPerda = new javax.swing.JTextField();
        jLabel3 = new javax.swing.JLabel();
        jPanel1 = new javax.swing.JPanel();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jButtonInserir.setText("Gerar Gráfico");
        jButtonInserir.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButtonInserirActionPerformed(evt);
            }
        });

        jTableGrafico.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null},
                {null, null, null},
                {null, null, null},
                {null, null, null},
                {null, null, null},
                {null, null, null},
                {null, null, null},
                {null, null, null},
                {null, null, null},
                {null, null, null}
            },
            new String [] {
                "Produto", "Produção", "Perda"
            }
        ) {
            Class[] types = new Class [] {
                java.lang.String.class, java.lang.Integer.class, java.lang.Integer.class
            };

            public Class getColumnClass(int columnIndex) {
                return types [columnIndex];
            }
        });
        jScrollPane1.setViewportView(jTableGrafico);

        jLabel1.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        jLabel1.setText("Mês");

        jLabel2.setText("Total Produção:");

        jLabel3.setText("Total Perda");

        jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Gráfico"));

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 356, Short.MAX_VALUE)
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 0, Short.MAX_VALUE)
        );

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jButtonInserir, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGap(94, 94, 94)
                                .addComponent(jTextFieldTotalPerda, javax.swing.GroupLayout.PREFERRED_SIZE, 84, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel1)
                                .addGap(18, 18, 18)
                                .addComponent(jTextFieldMes, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addComponent(jLabel3)
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel2)
                                .addGap(18, 18, 18)
                                .addComponent(jTextFieldTotalGanho, javax.swing.GroupLayout.PREFERRED_SIZE, 84, javax.swing.GroupLayout.PREFERRED_SIZE)))
                        .addGap(0, 28, Short.MAX_VALUE))
                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel1)
                            .addComponent(jTextFieldMes, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 156, Short.MAX_VALUE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel2)
                            .addComponent(jTextFieldTotalGanho, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel3)
                            .addComponent(jTextFieldTotalPerda, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(jButtonInserir))
                    .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addContainerGap())
        );

        pack();
    }// </editor-fold>                        


    private void jButtonInserirActionPerformed(java.awt.event.ActionEvent evt) {                                               
        // TODO add your handling code here:
        String mes = jTextFieldMes.getText();
        String nome; int Producao, TotalGanho = 0, TotalPerda = 0 , Perda;
        DefaultCategoryDataset grafico = new DefaultCategoryDataset();
        JFreeChart barchart = ChartFactory.createBarChart3D(mes, "Produção e Perda" , null , grafico, PlotOrientation.HORIZONTAL, true, true, false);

      //  DefaultTableModel modelo = new DefaultTableModel();        
      //  modelo.setColumnIdentifiers(new String[]{"Produto", "Produção","Perda"});
      //  jTableGrafico.setModel(modelo);     

        CategoryPlot barchrt = barchart.getCategoryPlot();
        barchrt.setRangeGridlinePaint(Color.ORANGE);
        ChartPanel barPanel = new ChartPanel(barchart, true);
        barPanel.setSize(jPanel1.getWidth(), jPanel1.getHeight());
        barPanel.setVisible(true);
        jPanel1.removeAll();
        jPanel1.add(barPanel, BorderLayout.CENTER);
        jPanel1.validate();
        jPanel1.revalidate();
        jPanel1.repaint();

        for(int i = 0; i < jTableGrafico.getRowCount(); i++){
            nome = jTableGrafico.getModel().getValueAt(i, 0).toString();
            Producao = Integer.parseInt(jTableGrafico.getModel().getValueAt(i, 1).toString());            
            Perda = Integer.parseInt(jTableGrafico.getModel().getValueAt(i, 2).toString());

            grafico.setValue(Producao, "Produção", nome);
            grafico.setValue(Perda, "Perda", nome);
            TotalGanho = TotalGanho + Producao;
            TotalPerda = TotalPerda + Perda;
        }
        jTextFieldTotalGanho.setText(String.valueOf(TotalGanho));
        jTextFieldTotalPerda.setText(String.valueOf(TotalPerda));

    }                                              

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(GraficoFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(GraficoFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(GraficoFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(GraficoFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>
        //</editor-fold>

        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new GraficoFrame().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify                     
    private javax.swing.JButton jButtonInserir;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTable jTableGrafico;
    private javax.swing.JTextField jTextFieldMes;
    private javax.swing.JTextField jTextFieldTotalGanho;
    private javax.swing.JTextField jTextFieldTotalPerda;
    // End of variables declaration                   
}

Erro que acontece no 2 programa (Executa normalmente, da o erro depois de clicar no botão inserir) :

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at graficov2.GraficoFrame.jButtonInserirActionPerformed(GraficoFrame.java:197)
    at graficov2.GraficoFrame.access$000(GraficoFrame.java:23)
    at graficov2.GraficoFrame$1.actionPerformed(GraficoFrame.java:64)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
    at java.awt.Component.processMouseEvent(Component.java:6535)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
    at java.awt.Component.processEvent(Component.java:6300)
    at java.awt.Container.processEvent(Container.java:2236)
    at java.awt.Component.dispatchEventImpl(Component.java:4891)
    at java.awt.Container.dispatchEventImpl(Container.java:2294)
    at java.awt.Component.dispatchEvent(Component.java:4713)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
    at java.awt.Container.dispatchEventImpl(Container.java:2280)
    at java.awt.Window.dispatchEventImpl(Window.java:2750)
    at java.awt.Component.dispatchEvent(Component.java:4713)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.awt.EventQueue$3.run(EventQueue.java:703)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.awt.EventQueue$4.run(EventQueue.java:731)
    at java.awt.EventQueue$4.run(EventQueue.java:729)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

0 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags jfreechart java ou faça a sua própria pergunta.