blz, vou instalar aqui, desde já agradeço sua atenção. muito obrigado mesmo
Concordo em parte com o @rodriguesabner.
Porém, utilizo o Netbeans 8.2 e 11.0 sem problemas nos projetos desenvolvidos.
Se puder, poste o conteúdo do arquivo frmLogin.java para lhe ajudar.
boa noite, instalei o Netbeans 8.0.1 e esta dando o mesmo erro
public class frmLogin extends javax.swing.JFrame {
Connection con = null;
PreparedStatement PStmt = null;
ConectaBd cb = new ConectaBd();
ResultSet rs = null;
/**
* Creates new form frmLogin
*/
public frmLogin() {
con = cb.conexao("jdbc:postgresql://localhost:5432/bd_factoring","postgres","9j#d2!&_A0");
if (con == null) {
System.exit(0);
}
setResizable(false);
this.setType(java.awt.Window.Type.UTILITY);
initComponents();
centralizarComponente();
initComponents();
}
/**
* 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() {
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
txtLogin = new javax.swing.JTextField();
txtSenha = new javax.swing.JPasswordField();
btnLogin = new javax.swing.JButton();
btnCancelar = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jLabel1.setText("Informe login e senha");
jLabel2.setText("Login:");
jLabel3.setText("Senha:");
txtSenha.setText("jPasswordField1");
btnLogin.setText("Login");
btnCancelar.setText("Cancelar");
btnCancelar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnCancelarActionPerformed(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()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(jLabel2))
.addGroup(layout.createSequentialGroup()
.addGap(74, 74, 74)
.addComponent(jLabel3)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(txtLogin, javax.swing.GroupLayout.PREFERRED_SIZE, 193, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtSenha, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(43, 43, 43))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(116, 116, 116)
.addComponent(jLabel1))
.addGroup(layout.createSequentialGroup()
.addGap(102, 102, 102)
.addComponent(btnLogin)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(btnCancelar)))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(22, 22, 22)
.addComponent(jLabel1)
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(txtLogin, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(txtSenha, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(45, 45, 45)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(btnLogin)
.addComponent(btnCancelar))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
private void btnCancelarActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
System.exit(0);
}
/**
* @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(frmLogin.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(frmLogin.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(frmLogin.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(frmLogin.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new frmLogin().setVisible(true);
}
});
}
public void centralizarComponente() {
Dimension ds = Toolkit.getDefaultToolkit().getScreenSize();
Dimension dw = getSize();
setLocation((ds.width - dw.width) / 2, (ds.height - dw.height) / 2);
}
// Variables declaration - do not modify
private javax.swing.JButton btnCancelar;
private javax.swing.JButton btnLogin;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JTextField txtLogin;
private javax.swing.JPasswordField txtSenha;
// End of variables declaration
}
public class ConectaBd {
public Connection conexao(String fonte, String usuario, String senha) {
try {
Class.forName("org.postgresql.Driver");
Connection con = DriverManager.getConnection(fonte, usuario, senha);
JOptionPane.showMessageDialog(null, "Conectado com sucesso! ");
return con;
} catch(ClassNotFoundException e){
JOptionPane.showMessageDialog(null, "Erro em ClassNotFoundException: " + e.getMessage());
return null;
} catch(SQLException e){
JOptionPane.showMessageDialog(null, "Erro em SQLException: " + e.getMessage());
return null;
} catch(NoClassDefFoundError e){
JOptionPane.showMessageDialog(null, "Erro em NoClassDefFoundError: " + e.getMessage());
return null;
}
}
}
Fala Silva, qual o erro?
String driver = “org.postgresql.Driver”;
String caminho = jdbc:postgresql://…"
Falta o método de acesso, sem o qual o seu frmLogin não sabe o que fazer quando, após digitado o login e a senha, o usuário clica no btnLogin.
Inicialmente o seu construtor está assim:
public frmLogin() {
con = cb.conexao("jdbc:postgresql://localhost:5432/bd_factoring","postgres","9j#d2!&_A0");
if (con == null) {
System.exit(0);
}
setResizable(false);
this.setType(java.awt.Window.Type.UTILITY);
initComponents();
centralizarComponente();
initComponents();
}
Neste ponto o initComponents(); também está duplicado e a minha sugestão é alterar assim:
public frmLogin() {
initComponents();
setResizable(false);
this.setType(java.awt.Window.Type.UTILITY);
centralizarComponente();
con = cb.conexao("jdbc:postgresql://localhost:5432/bd_factoring","postgres","9j#d2!&_A0");
if (con == null) {
System.exit(0);
}
}
Se me permitir, sugiro a visualização do vídeo do colega Paulo Perrone no Youtube que demonstra como fazer uma tela de login com acesso para a tela principal do sistema.
https://www.youtube.com/watch?v=OfsCClnnY6U
Abraços
valeu vou fazer as alteracoes, depois entro em contato. obrigado
Cara, eu passei o código pra vc conectar, vc testou ao menos? Vi que comentou agora em um outro tópico que não conseguiu.
Vou te passar um exemplo, vc só precisa mudar TRES COISAS:::::
Troca onde tá “seu_banco”, pelo nome do seu banco,
usuario: seu usuario,
senha: sua senha.
NAO TEM ERRO BROTHER
private final String caminho = "jdbc:postgresql://localhost:5432/seu_banco";// responsável por setar o local do banco de dados
private String usuario = "seu_usuario";
private String senha = "sua_senha";
Código:
import java.sql.*;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
public class ConectaBanco {
public Statement stm;// responsável por preparar e realizar pesquisas no banco de dados
public ResultSet rs;// responsável por armazenar o resultado de uma pesquisa passada para o Statement
private final String driver = "org.postgresql.Driver";// responsável por identificar o serviço de banco de dados
private final String caminho = "jdbc:postgresql://localhost:5432/seu_banco";// responsável por setar o local do banco de dados
private String usuario = "seu_usuario";
private String senha = "sua_senha";
public Connection conn; // responsável por realizar a conexão com o banco de dados
public void conexao() { //Metodo Responsável por realizar a conexão com o banco
try {// tentativa inicial
Class.forName(driver);
conn = DriverManager.getConnection(caminho, usuario, senha); // realiza a conexão com o banco de dados
//JOptionPane.showMessageDialog (null, "Conectado com Sucesso ao Banco de Dados!"); // imprime uma caixa de mensagens
System.out.println("Conectado"); // imprime uma caixa de mensagens
} catch (SQLException ex) { // excessão
System.out.println("Erro ao conectar");
Logger.getLogger(ConectaBanco.class.getName()).log(Level.SEVERE, null, ex);
} catch (ClassNotFoundException ex) {
Logger.getLogger(ConectaBanco.class.getName()).log(Level.SEVERE, null, ex);
}
}
public void executaSQL(String sql) {
try {
stm = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
rs = stm.executeQuery(sql);
} catch (SQLException ex) {
//JOptionPane.showMessageDialog (null, "Erro de ExecutaSQL!\n Erro:" + ex.getMessage());
}
}
public void desconecta() {//metodo para fechar a conexão com o banco de dados
try {
conn.close(); //fecha a conexão
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Erro ao fechar a conexão!\n Erro:" + ex.getMessage());
}
}
public static void main(String[] args) {
new ConectaBanco().conexao();
}
}
boa noite abner, eu testei como vc me mandou deu o mesmo erro, eu acredito que seja a minha maquina, estou usando o windows7 e de uns tempo para cá ele nao abre o firewall de jeito nenhum, vou fazer um teste na maquina do meu genro que é nova e windows 10 depois eu retorno, desde de já agradeço sua grande atenção, estou testando,. blz
Qual é o erro?
o mesmo erro que nao localizou o driver, já adicionei na libraries, como disse amanhã vou testar na maquina do meu genro. erro Classform=“org.postgresql.Driver”, boa noite e obrigado mais uma vez
java.lang.ClassNotFoundException: org.postgresql.Driver
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:190)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:291)
at DAO.ConectaBd.conexao(ConectaBd.java:24)
at financeiro.frmLogin.(frmLogin.java:33)
at financeiro.Financeiro.main(Financeiro.java:19)
o erro continua, instalei em outra maquina zerada com o windows10 e deu o mesmo erro tambem.
pode me ajudar fazendo um grande favor
Você tem certeza que colocou o Driver? Tira um print mostrando o driver na biblioteca!
deixa eu te fazer uma pergunta, onde adiciono o driver corretamente no netbeans? acredito que estou adicionando no lugar errado.
Se aí estiver em português, vai ser:
1-Bibliotecas,
2-Adicionar Biblioteca
3-Procura a biblioteca do postgresql, e aperta em adicionar biblioteca
1 -
2 -
3 -
isso mesmo, ai que estou adicionando
se vc tiver o teamviewer ai eu libero para vc entrar na minha maquina para vc ver
Não precisa, tira print e manda aqui!