Olá Pessoal;
Bom dia!
Estou tentando utilizar um BD que vá junto com minha aplicação sem necessidade de instalar o banco no cliente.
Os colegas aqui do GUJ me indicaram o Derby, acheu um tutorial e consegui criar o banco e tudo mais:
http://www.netbeans.org/kb/docs/ide/java-db_pt_BR.html#starting
Acontece que quando gero o JAR e levo minha aplicação na estação do client aparece um erro de driver não encontrado:
Abaixo segue como estou fazendo a comunicação:
package dao;
import bean.Desbravador;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.swing.JOptionPane;
public class DAO{
static final String url = "jdbc:derby://localhost:1527/desb;create=true";
static final String driver = "org.apache.derby.jdbc.ClientDriver";
static final String user = "abc";
static final String password = "abc";
public Boolean selUsuario(){
Connection conn=null;
PreparedStatement ps=null;
ResultSet rs=null;
Boolean vOK=false;
String sqlSelUsuario = "SELECT * FROM Usuario";
try {
Class.forName(driver);
}
catch (ClassNotFoundException ex) {
ex.printStackTrace();
vOK=false;
JOptionPane.showMessageDialog(null,"ERRO -- DAO / Classe não encontrada: "+ex);
}
try {
conn=DriverManager.getConnection(url,user,password);
ps=conn.prepareStatement(sqlSelUsuario);
rs=ps.executeQuery();
while (rs.next()){
vOK=true;
}
ps.close();
rs.close();
conn.close();
}
catch (SQLException ex) {
ex.printStackTrace();
JOptionPane.showMessageDialog(null,"ERRO -- DAO / Driver não encontrado: "+ex);
vOK=false;
}
return vOK;
}
}
Na minha maquina, onde está o netbeans está tudo certinho, mas na maquina do client dá o erro do segundo catch:
java.sql.TransientConnectionException: java.net.ConnectionException: Erro ai cibectar o servidor ‘localhos’ porta ‘1527’. Recebida a mensagem: ‘Connection refused: closed’.
Tenho que instalar algum servidor no client para que possa acessar o banco de dados?
Obrigado à todos!
Marco A.