Probelma com JDBC

Olá,

Eu usava ODBC mas como o numero de maquinas rodam a minha aplicação aumentou ficar configurando fonte de dados em todas as maquinas e inviavel entao parti para o jbdc configurei o classpath = do tutorial mas quando executo a aplicação tenho erro

ava.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:164)
at Helpdesk.MyConnection.getConnection(MyConnection.java:13)
at Helpdesk.SQL_Frame_Login.ver_login(SQL_Frame_Login.java:34)
at Helpdesk.Frame_Login$ButtonHandler.actionPerformed(Frame_Login.java:99)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:234)
at java.awt.Component.processMouseEvent(Component.java:5488)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3093)
at java.awt.Component.processEvent(Component.java:5253)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3955)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1766)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:234)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

o codigo de conexao e

public static Connection getConnection() throws Exception
{
Class.forName(“org.gjt.mm.mysql.Driver”);
Connection c = java.sql.DriverManager.getConnection(“jdbc:mysql://localhost:3306/mysql?useUnicode=true”,“root”,“123”);
return c;
}

Voce precisa colocar o drive do Mysql na sua biblioteca.

como faço isso ??

se tiver no NetBeans, vc irá adicionar assim:

vai em Libraries do seu projeto --> Add JAR/folder
e adicione seu driver

:smiley:

no Eclipse

va em Propriedades do seu projeto --> Java Build Path --> Add Jar
e adicione seu driver!

:smiley:

[quote=felipe_thrash]se tiver no NetBeans, vc irá adicionar assim:

vai em Libraries do seu projeto --> Add JAR/folder
e adicione seu driver

:smiley:

no Eclipse

va em Propriedades do seu projeto --> Java Build Path --> Add Jar
e adicione seu driver!

:smiley:

[/quote]
kara funcinou wlw abraço

[quote=JJjava][quote=felipe_thrash]se tiver no NetBeans, vc irá adicionar assim:

vai em Libraries do seu projeto --> Add JAR/folder
e adicione seu driver

:smiley:

no Eclipse

va em Propriedades do seu projeto --> Java Build Path --> Add Jar
e adicione seu driver!

:smiley:

[/quote]
kara funcinou wlw abraço [/quote]

agora fui testar nas maquinas clientes nao funcionou como tenho q fazer ? tem q colokar o driver la tb ? eles rodam a aplicação a partir do jar q fica em um compartilahmento no servidor.
verifiquei q a aplicação so estava acessando a base de dados quando eu executo dentro do netbeans se executtar o jar no servidor tb nao funciona oq sera agora?
abraço

pera aí,

se o usuário acessa a aplicação no servidor, através de um atalho… então não tem problema (tente reiniciar o servidor e tal)

agora se o usuário tem a aplicação em cada maquina pra acessar o servidor, vc vai ter q colocar o driver em cada maquina de usuario, assim como atualizar cada aplicação…

[quote=felipe_thrash]pera aí,

se o usuário acessa a aplicação no servidor, através de um atalho… então não tem problema (tente reiniciar o servidor e tal)

agora se o usuário tem a aplicação em cada maquina pra acessar o servidor, vc vai ter q colocar o driver em cada maquina de usuario, assim como atualizar cada aplicação…[/quote]
resolvi era a pasta lib q nao tinha colocado no compartilhamento… :smiley:

aproveitando o topico como faço para criar pastas, copiar e deletar vou fazer um instalador para a aplicação ai copia tudo certo na hora de instalar no servidor.

um problema que tive…
q vc pode testar tb…

seu Driver… pode tá dando pau tb ( possibilidade) caso reiniciar servidor nao resolva…

troque seu driver, baixe la no site do mySQL

e altere a conexão na linha:

Class.forName("com.mysql.jdbc.Driver");

qualquer coisa da um toque ae!

att’s

a só… então ta blz!

ehehe :stuck_out_tongue:

bem… acredito que um .bat resolve isso daí que vc quer… acho q no google vc acha algo sobre isso… ou aki tb pesquisando…

boa sorte

falows!

Oi pessoal…
Bom…eu estou montando um projeto em Java, utilizando o Jcreator
Estou fazendo conexão com o Banco de dados, porém ao executar o programa e clicar no botão para gravar o registro no banco, no prompt aparecem várias instruções, e a primeira delas é essa:

java.lang.nullpointerexception

mas ainda existem umas 20 linhas com diversos “erros”
não sei o que fazer para resolver o problema, pois já revisei o programa várias vezes, e não acho o erro!
Quem puder ajudar…ficaria imensamente grata :slight_smile:

Segue o código do programa:

import java.sql.;
import javax.swing.
;
import java.awt.;
import java.awt.event.
;

public class buscanome extends JFrame implements ActionListener
{

JLabel L1,L2;
JButton btpesquisar, btcancelar;
static JTextField tfNome;
String nome;
JPanel painel1 = new JPanel();
ResultSet rs;
Statement MeuState;
Connection MinhaConexao;
boolean status;

public static void main(String args[])
{

JFrame Janela = new buscanome();
Janela.show();
WindowListener x = new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
};
Janela.addWindowListener(x);
}

buscanome()
{
painel1.setLayout(new FlowLayout(FlowLayout.LEFT));
L1 = new JLabel("Você selecionou a opção de identificação por nome.Por Favor: ");
L2 = new JLabel(“Digite o nome para pesquisar.”);

tfNome = new JTextField(50);
nome = tfNome.getText();
btpesquisar=new JButton(“Pesquisar”);
btcancelar=new JButton(“Cancelar Operação”);

btpesquisar.setBackground(new Color(180,180,250));
btcancelar.setBackground(new Color(180,180,250));

btpesquisar.addActionListener(this);
btcancelar.addActionListener(this);

painel1.add(L1); painel1.add(tfNome);
painel1.add(L2);
painel1.add(btpesquisar); painel1.add(btcancelar);

getContentPane().add(painel1);
setTitle(“Busca por Nome”);
setSize(600,140);
setResizable(false);
String url = “jdbc:odbc:MeuBanco”;

try
{
Class.forName( “sun.jdbc.odbc.JdbcOdbcDriver” );
MinhaConexao = DriverManager.getConnection(url);
}
catch(ClassNotFoundException erro)
{
System.out.println(“Driver JDBC-ODBC nao encontrado!”);
return;
}
catch(SQLException erro)
{
System.out.println(“Problema na Conexao com fonte de dados”);
return;
}}

public void actionPerformed(ActionEvent e)
{
if(e.getSource()==btpesquisar)
{
try
{

//MeuState = MinhaConexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);

String sql = “select * nome from Pacientes where nome = '” + nome + “’”;
tfNome.getText();
rs = MeuState.executeQuery(sql);
rs.next();
nome = rs.getString(“nome”);

String sql2=“Insert into Resultado(resulnome) Values (sql)”;
MeuState.executeUpdate(sql2);
JOptionPane.showMessageDialog(null, “Gravação Realizada com sucesso!”);

}
catch(SQLException erro) { }
}} }

java.lang.NullPointerException e qdo vc estah apontando para um objeto que não existe ou o caminho dele esta incorreto.
poste o tds os erros ai pra gente ver ai a galera vai ajudar, qual ide vc usa , qual banco?