Resolvido----Quais são os erros neste projeto?

Boa tarde, pessoal estou travado em alguns erros no meu código, estou fazendo um programa que insere materiais em um banco de dados postgres.Mas tem alguns erros acho que de Orientação mas não to conseguindo resolver, alguém me mostra o que não estou conseguindo ver? qual o erro e como souciona?
Estou usando Swing e o netbeans 6.8
link do projeto… http://www.4shared.com/file/Fl_f-Onl/recepcao.html

Código:

[b]\Projeto recepcao

\pacote visao
\classe CadastroMaterial[/b]

[code]package Visao;

import Modelo.MaterialModelo;

public class CadastroMaterial extends javax.swing.JFrame {

public CadastroMaterial() {
    initComponents();

}

@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">                          
private void initComponents() {

    jLabel1 = new javax.swing.JLabel();
    jtfMaterial = new javax.swing.JTextField();
    cadastrar = new javax.swing.JButton();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

    jLabel1.setText("Material");

    cadastrar.setText("Cadastrar");
    cadastrar.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            cadastrarActionPerformed(evt);
        }
    });

    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.TRAILING)
                .addComponent(cadastrar)
                .addGroup(layout.createSequentialGroup()
                    .addComponent(jLabel1)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(jtfMaterial, javax.swing.GroupLayout.PREFERRED_SIZE, 230, javax.swing.GroupLayout.PREFERRED_SIZE)))
            .addContainerGap(112, Short.MAX_VALUE))
    );
    layout.setVerticalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(layout.createSequentialGroup()
            .addContainerGap()
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jLabel1)
                .addComponent(jtfMaterial, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addGap(18, 18, 18)
            .addComponent(cadastrar)
            .addContainerGap(228, Short.MAX_VALUE))
    );

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

private void cadastrarActionPerformed(java.awt.event.ActionEvent evt) {                                          
    try {
        String material = jtfMaterial.getText();
        MaterialModelo material = new MaterialModelo();
        material.setMaterial(material);



    } catch (Exception e) {
    }


}                                         

public static void main(String args[]) {
    java.awt.EventQueue.invokeLater(new Runnable() {

        public void run() {
            new CadastroMaterial().setVisible(true);
        }
    });
}
// Variables declaration - do not modify                     
private javax.swing.JButton cadastrar;
private javax.swing.JLabel jLabel1;
private javax.swing.JTextField jtfMaterial;
// End of variables declaration                   

}[/code]

\Classe Inicio

[code]package Visao;

public class Inicio extends javax.swing.JFrame {

CadastroMaterial frmCadastroMaterial = new CadastroMaterial();

public Inicio() {
    initComponents();
    menu.add(frmCadastroMaterial);
}

@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">                          
private void initComponents() {

    menu = new javax.swing.JMenuBar();
    jMenu1 = new javax.swing.JMenu();
    jMenuItem1 = new javax.swing.JMenuItem();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

    jMenu1.setText("Inicio");
    jMenu1.setBorderPainted(true);
    jMenu1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenu1ActionPerformed(evt);
        }
    });

    jMenuItem1.setText("cadastro");
    jMenu1.add(jMenuItem1);

    menu.add(jMenu1);
    jMenu1.getAccessibleContext().setAccessibleName("Inicio\nteste");

    setJMenuBar(menu);

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGap(0, 400, Short.MAX_VALUE)
    );
    layout.setVerticalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGap(0, 120, Short.MAX_VALUE)
    );

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

private void jMenu1ActionPerformed(java.awt.event.ActionEvent evt) {                                       
    frmCadastroMaterial.setVisible(true);
}                                      

public static void main(String args[]) {
    java.awt.EventQueue.invokeLater(new Runnable() {

        public void run() {
            new Inicio().setVisible(true);
        }
    });
}
// Variables declaration - do not modify                     
private javax.swing.JMenu jMenu1;
private javax.swing.JMenuItem jMenuItem1;
private javax.swing.JMenuBar menu;
// End of variables declaration                   

}[/code]

\pacote modelo
\classe MaterialModelo

[code]
package Modelo;

public class MaterialModelo {

private String material;

public String getMaterial() {
    return material;
}

public void setMaterial(String material) {
    this.material = material;
}

}[/code]
\pacote excecao
\classe MaterialExcecao

[code]package Excecao;

import Modelo.MaterialModelo;

public class MaterialExcecao extends Exception {

private MaterialModelo material;

public MaterialExcecao(String string) {
    throw new UnsupportedOperationException("driver de conexao");
}

public MaterialModelo getMaterial() {
    return material;
}

public void setMaterial(MaterialModelo material) {
    this.material = material;
}

}[/code]
\pacote dados
\classe Conexao

[code]package Dados;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Conexao {

public Connection getConnection() throws ClassNotFoundException, SQLException {
    Class.forName("org.postgresql.Driver");
    String url = "jdbc:postgresql://localhost:5432/recepcao";
    String user = "postgres";
    String password = "adminadmin";
    Connection con = DriverManager.getConnection(url, user, password);
    return con;
}

}[/code]

\classe MaterialDados

[code]package Dados;

import Excecao.MaterialExcecao;
import Modelo.MaterialModelo;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class MaterialDado {

public void incluir(MaterialModelo material) throws MaterialExcecao, SQLException {
    try {
        Connection con = new Conexao().getConnection();
        String sql = "insert into materiais (material) values ('" + material + "')";
        PreparedStatement stm = con.prepareStatement(sql);
        stm.setString(material.getMaterial());
        stm.executeUpdate();

    } catch (ClassNotFoundException ex) {
        throw new MaterialExcecao("FFFUUUUUUUUU.\n" + ex.getMessage() + "\n(Material.cadastro)");
    } catch (SQLException ex) {
        throw new MaterialExcecao("FFUUUUUUnao salvou. \n" + ex.getMessage() + "\n(Material.cadastro)");
    }
}

}[/code]

[b]\classe MaterialException o netbeans insistiu para que eu criasse essa…[/b][code]/*

  • To change this template, choose Tools | Templates
  • and open the template in the editor.
    */

package Dados;

/**
*

  • @author de
    */
    class MaterialException {

    public MaterialException(String string) {
    }

}[/code]

\pacote controle
\classe MaterialControle

[code]package Controle;

import Excecao.MaterialExcecao;
import Dados.MaterialDado;
import Modelo.MaterialModelo;

public class MaterialControle {

public void cadastrar(MaterialModelo modelo) throws MaterialExcecao {
    try {
        validarMaterial(material.getNome());
        MaterialDado materialVal = new MaterialDado();
        materialVal.incluir(material);

    } catch (MaterialExcecao ex) {
        MaterialExcecao nex = new MaterialExcecao(ex.getMessage() + "\n(incluindo material)");
        nex.setCliente(material);
        throw nex;
    }
}

}[/code]

Olá

Poderia nos contar quais erros estão acontecendo.
Acho que assim você consegue ser ajudado mais rápido.

Por favor, especifique quais são os pontos.

No aguardo.
Flwsss

Aqui Thiago, coloquei a classe a linha e transcrevi os erros.

Classe CadastroMaterial
linha 63 “material is already defined in cadastrarActionperformed(java.awt.event.ActionEvent)”
linha 64 “cannot find symbol symbol: method setMaterial”
Linha 74 to achando que tem um erro ali mas meu cerebro está cansado e não to conseguindo entender por que esta linha existe…

Classe MAterialDado
linha 14 “method setString in class java.sql.PreparedStatement cannot be applied to given types required: int,java.lang.String found: java.lang.String”

Classe MaterialControle
linha 11, 13,17 “cannot find symbol symbol: variable material location class Controle.MaterialControle”
linha 15 “exception Excecao.MaterialExcecao is never thrown in body of corresponding try statement”

Se alguém puder me dar uma força nesses erros ae ficarei grato, to querendo aproveitar o resto do dia pra termianr esse codigo…

[quote]Classe MAterialDado
linha 14 “method setString in class java.sql.PreparedStatement cannot be applied to given types required: int,java.lang.String found: java.lang.String” [/quote]

o codigo correto seria:

String sql = "insert into materiais (material) values (?)";  
PreparedStatement stm = con.prepareStatement(sql);  
stm.setString(1, material.getMaterial()); 

[quote]Classe MaterialControle
linha 11, 13,17 “cannot find symbol symbol: variable material location class Controle.MaterialControle” [/quote]

preste atenção, o nome da sua variavel é modelo e não material

[quote]Classe MaterialControle
linha 15 “exception Excecao.MaterialExcecao is never thrown in body of corresponding try statement” [/quote]

provavelmente este erro se corrigirá assim que você acertar a classe MaterialDado

PS: preste atenção na MaterialDado, você colocou no throws SQLException mas você nunca lança uma exceção deste tipo

[quote]
Classe CadastroMaterial
linha 63 “material is already defined in cadastrarActionperformed(java.awt.event.ActionEvent)” [/quote]

Você tem duas variaveis com o nome material
Uma é uma String e outra MaterialModelo

Isto é invalido no JAVA ter dois identificadores com o mesmo nome no mesmo escopo

[quote]
Classe CadastroMaterial
linha 64 “cannot find symbol symbol: method setMaterial”[/quote]

Corrija o erro acima

[quote]
Classe CadastroMaterial
Linha 74 to achando que tem um erro ali mas meu cerebro está cansado e não to conseguindo entender por que esta linha existe… [/quote]

Que tipo de erro?

Corrija todos estes pontos,
caso ainda tenha dúvida poste novamente

Uma coisa que eu gosto de fazer, no eclipse, é aguardar pelas sugestões do mesmo.

Geralmente são muito boas, principalmente na hora de digitar e causar um erro, vc pode optar pelo quick fix (Ctrl + 1).

Imagino que vc tem todo o tipo de problema ai e uma IDE ajudaria muito. Seria bom vc perguntar sobre problemas específicos, um de cada vez. Tendo certeza que o classpath esta correto e que nada esta com problemas, começam os erros de runtime, que vc pode encontrar com um debugger. Tudo é ir fuçando e aprendendo :slight_smile: