| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 09:34:33
|
AlanHoinacki
HelloWorld
![[Avatar]](/images/avatar/ac44c2395b8dc032861b9ca7c0ddf11b.jpg)
Membro desde: 12/08/2011 08:07:26
Mensagens: 10
Localização: Colider/MT
Offline
|
Olá pessoal!
Estou começando em Java e me deparei com o seguinte erro:
Exception in thread "main" java.lang.NullPointerException
at jdbc.dao.TccDAO.adiciona(TccDAO.java:27)
O trecho ao qual o erro se refere é esse:
Vi que tem bastante posts semelhantes no fórum, pesquisei mas não consegui encontrar o problema.
Se puderem me ajudar, eu agradeço!
Abraço!
This message was edited 2 times. Last update was at 12/08/2011 15:43:13
|
Alan Hoinacki
"Sobre os ombros de gigantes!" |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 09:35:51
|
thiago.correa
GUJ Master
![[Avatar]](/images/avatar/c37f9e1283cbd4a6edfd778fc8b1c652.jpg)
Membro desde: 26/03/2006 18:54:30
Mensagens: 1861
Offline
|
Meu palpite vai para a variável connection! Indica aí para nós qual é a linha 27
|
---
"Se não puder ajudar, atrapalhe, afinal de contas o importante é participar!"
Thiago
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 09:37:31
|
ManoJava
JavaEvangelist
![[Avatar]](/images/avatar/9e0c2d8064cdede08df533dd8f192b1a.jpg)
Membro desde: 23/04/2009 09:18:23
Mensagens: 480
Localização: Mococa-SP
Offline
|
Bom dia!!
Primeira coisa coloca um BreakPoint nessas linhas onde vc seta os valores, debuga e veja se algum desses parametros esta retornando null, veja se sua tabela aceita valores null, etc...
Att.
|
"Há Três coisas que nunca voltam atrás: A flecha lançada, a palavra pronunciada e a oportunidade perdida." - Provérbio Chinês
In Guj We Trust!
Bacharel em Ciência da Computação
MBA - Gestão de Projetos |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 09:40:58
|
caio.ribeiro.pereira
JavaChild
![[Avatar]](/images/avatar/983d086cc5dbe8fc0ff227f793b8fc6d.jpg)
Membro desde: 03/04/2011 16:53:16
Mensagens: 121
Localização: São Vicente - SP
Offline
|
o erro ta na linha 27, como vc nao colocou o código fonte completo, o meu palpite é na linha:
Errado:
Correto
A ordem dos atributos sql começam apartir do 0 e não do 1, ai talvez o erro seja na no setDate pois nele vc cita o indice 4 que não existe pois deveria ser o número 3.
Enfim, é só um palpite e caso esteja errado, favor me corrigir
This message was edited 1 time. Last update was at 12/08/2011 09:41:29
|
Caio Ribeiro Pereira
Freelancer em Desenvolvimento Web
Portifólio: http://crpwebdev.com
Mail: caio.ribeiro.pereira@gmail.com
Twitter: @crp_underground , @UdgLinuxBlog e @UdgWebDev
Blogs: http://www.crpunderground.wordpress.com , http://www.udgwebdev.com , http://www.udglinux.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 09:46:41
|
DZR
JavaBaby
![[Avatar]](/images/avatar/0b17c3df4005268c403589c52e300809.jpg)
Membro desde: 06/08/2008 07:17:14
Mensagens: 87
Offline
|
A sua variável connection não está vazia?
Poste, de preferência, o erro todo e o seu código todo, pois só essas linhas fica meio vago arranjar solução.
|
"Só um tolo testa a profundidade da água com os dois pés." - Provérbio Ganense
"Viva todos os dias de sua vida como se fosse o último!
Vai que um dia vc acerta..." |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 09:52:07
|
thiago.correa
GUJ Master
![[Avatar]](/images/avatar/c37f9e1283cbd4a6edfd778fc8b1c652.jpg)
Membro desde: 26/03/2006 18:54:30
Mensagens: 1861
Offline
|
caio.ribeiro.pereira wrote:o erro ta na linha 27, como vc nao colocou o código fonte completo, o meu palpite é na linha:
Errado:
Correto
A ordem dos atributos sql começam apartir do 0 e não do 1, ai talvez o erro seja na no setDate pois nele vc cita o indice 4 que não existe pois deveria ser o número 3.
Enfim, é só um palpite e caso esteja errado, favor me corrigir 
Tem mais esse erro, mas, não seria uma NPE, ACHO que seria uma SQLException
|
---
"Se não puder ajudar, atrapalhe, afinal de contas o importante é participar!"
Thiago
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 10:05:07
|
DZR
JavaBaby
![[Avatar]](/images/avatar/0b17c3df4005268c403589c52e300809.jpg)
Membro desde: 06/08/2008 07:17:14
Mensagens: 87
Offline
|
caio.ribeiro.pereira wrote:o erro ta na linha 27, como vc nao colocou o código fonte completo, o meu palpite é na linha:
Errado:
Correto
A ordem dos atributos sql começam apartir do 0 e não do 1, ai talvez o erro seja na no setDate pois nele vc cita o indice 4 que não existe pois deveria ser o número 3.
Enfim, é só um palpite e caso esteja errado, favor me corrigir 
Na verdade, o rapaz está certo, pois o PreparedStatement não começa do 0, e sim do 1.
O valor que consta não é como se fosse um vetor, e sim indicando a qual "?" o campo pertence.
Ou seja, aqui realmente está correto:
O que eu posso suspeitar, sem ter o código do camarada:
1. O objeto de conexão está nulo.
2. Algumas das variáveis inseridas do Prepared Statement está NULL, e a tabela não aceita o campo null
3. Só tenho dois palpites...
|
"Só um tolo testa a profundidade da água com os dois pés." - Provérbio Ganense
"Viva todos os dias de sua vida como se fosse o último!
Vai que um dia vc acerta..." |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 10:12:52
|
AlanHoinacki
HelloWorld
![[Avatar]](/images/avatar/ac44c2395b8dc032861b9ca7c0ddf11b.jpg)
Membro desde: 12/08/2011 08:07:26
Mensagens: 10
Localização: Colider/MT
Offline
|
Nossa, a ajuda é rápida aqui hem...
O código completo da classe é:
Vlw!
This message was edited 2 times. Last update was at 12/08/2011 15:42:13
|
Alan Hoinacki
"Sobre os ombros de gigantes!" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 10:16:07
|
DZR
JavaBaby
![[Avatar]](/images/avatar/0b17c3df4005268c403589c52e300809.jpg)
Membro desde: 06/08/2008 07:17:14
Mensagens: 87
Offline
|
E o erro? Poste tb.
Coloque seu código entre as tags ["CODE"] e ["/CODE"] (retire as aspas), para melhor visualização no fórum.
Vlw.
|
"Só um tolo testa a profundidade da água com os dois pés." - Provérbio Ganense
"Viva todos os dias de sua vida como se fosse o último!
Vai que um dia vc acerta..." |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 10:22:51
|
AlanHoinacki
HelloWorld
![[Avatar]](/images/avatar/ac44c2395b8dc032861b9ca7c0ddf11b.jpg)
Membro desde: 12/08/2011 08:07:26
Mensagens: 10
Localização: Colider/MT
Offline
|
Acho que DZR está correto. Realmente havia problema com a variável "connection".
Esta estava assim: this.connection = ConnectionFactory.getConnection();
e deveria ser assim: this.connection = new ConnectionFactory().getConnection();
Mas mesmo assim o problema persiste.
|
Alan Hoinacki
"Sobre os ombros de gigantes!" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 10:27:23
|
AlanHoinacki
HelloWorld
![[Avatar]](/images/avatar/ac44c2395b8dc032861b9ca7c0ddf11b.jpg)
Membro desde: 12/08/2011 08:07:26
Mensagens: 10
Localização: Colider/MT
Offline
|
O Erro:
Exception in thread "main" java.lang.NullPointerException
at jdbc.dao.TccDAO.adiciona(TccDAO.java:26)
at jdbc.teste.TestaInsere.main(TestaInsere.java:24)
A linha 24 apenas chama o método adiciona.
|
Alan Hoinacki
"Sobre os ombros de gigantes!" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 10:52:20
|
DZR
JavaBaby
![[Avatar]](/images/avatar/0b17c3df4005268c403589c52e300809.jpg)
Membro desde: 06/08/2008 07:17:14
Mensagens: 87
Offline
|
Bem, aqui está mostrando que o seu construtor não iniciou a variável connection.
Como não conheço todo o seu projeto, estou supondo que o jdbc é um pacote no seu projeto, e que o mesmo está acessível, ou seja, ele é public static.
Se o jdbc não for um pacote, sugiro criar uma classe estática para o ConnectionFactory.
Retire o atributo private do Connection (sei que não fará diferença alguma, mas comigo funcionou sem o private. Às vezes o peso do erro atrapalha)...
Retire o this.connection = ConnectionFactory.getConnection() e coloque-o antes da linha 26 (no caso, antes da linha PreparedStatement stmt = connection.prepareStatement(sql); ).
Se puder, debugue o projeto e veja se a variável connectio está sendo preenchida, pois pode estar com problema no ConnectionFactory, impedindo do drive JDBC conectar om o banco de dados. Aí, retorna um objeto vazio.
|
"Só um tolo testa a profundidade da água com os dois pés." - Provérbio Ganense
"Viva todos os dias de sua vida como se fosse o último!
Vai que um dia vc acerta..." |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 12:36:26
|
thiago.correa
GUJ Master
![[Avatar]](/images/avatar/c37f9e1283cbd4a6edfd778fc8b1c652.jpg)
Membro desde: 26/03/2006 18:54:30
Mensagens: 1861
Offline
|
at jdbc.dao.TccDAO.adiciona(TccDAO.java:26)
Cara o que interessa é essa classe na linha 26, é aí que tá ocorrendo o erro!
|
---
"Se não puder ajudar, atrapalhe, afinal de contas o importante é participar!"
Thiago
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 12:44:41
|
lucasportela
JavaTeenager
Membro desde: 28/12/2010 16:46:01
Mensagens: 198
Offline
|
Os parametros do PreparedStatement começam a contagem com 1 até onde eu sei...
http://download.oracle.com/javase/1.3/docs/api/java/sql/PreparedStatement.html
|
Precisa controlar o patrimônio de informática de sua empresa em um clique?
Controle de Patrimônio de Informática
Sobre java:
Java |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/08/2011 12:47:53
|
lucasportela
JavaTeenager
Membro desde: 28/12/2010 16:46:01
Mensagens: 198
Offline
|
Creio eu que o erro seja aqui:
não olhei o código completo com essa identação maluca que postou, mas não entendi o 'void', era pra ser um construtor?
|
Precisa controlar o patrimônio de informática de sua empresa em um clique?
Controle de Patrimônio de Informática
Sobre java:
Java |
|
|
 |
|
|