Jump to content
Sign in to follow this  
Suck_U

Problema Java/oracle/tomcat...

Recommended Posts

Bom dia pessoal, espero que o fim de semana tenha sido longo comparado com o meu!

O que se passa é o seguinte:

Estou a programar em java (netbeans 6.5) usando uma base de dados oracle (oracle XE 10g), com o webserver tomcat 6 e o que acontece é o seguinte, com a ligação à base de dados a funcionar sem problemas a conexão falha depois de duas queries ou dois inserts, deletes, seja lá o que for...

Dá me um erro "Jasper" qualquer coisa... a classe na qual é feita a pesquisa é usada mais de 2x, mas sempre que usada não tem nenhuma ligação pendente! a ideia seria, carregar dados através da BD para uma combo box (input select) e seguidamente ao inserir um campo carregar para essa combo, consigo inserir, apagar etc, mas apenas 2x...

Penso que será da cache ou do pooling da ligação à base de dados, mas não tenho a certeza ou posso estar completamente errado! tou farto de procurar na net mas nada!

cumprimentos e desde já agradeço a ajuda...

Share this post


Link to post
Share on other sites

Se disseres algo mais que "Jasper" qualquer coisa, pode ser que a gente saiba o que se passa.

Além do mais, o qualquer coisa diz-te qual é o erro. É uma questão de teres o trabalho de ler...

:rezingao:

Share this post


Link to post
Share on other sites

O erro que dá quando à 3a vez tento inserir dados na combobox:

________________________________________________________________________________________________________________________________

"type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

java.lang.NullPointerException

model.controlo.PesquisaCentrosFormacao1.listaCF(PesquisaCentrosFormacao1.java:23)

control.control.processRequest(control.java:243)

control.control.doPost(control.java:286)

javax.servlet.http.HttpServlet.service(HttpServlet.java:637)

javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.18 logs."

________________________________________________________________________________________________________________________________

Este é o erro que me dá logo ao inicio quando corro o programa após ter dado o erro anterior, ou seja, quero fazer uma pesquisa após o login e carregar para variáveis de sessão. Funciona bem, só dá erro quando dá o erro anterior...

________________________________________________________________________________________________________________________________

"HTTP Status 500 -

--------------------------------------------------------------------------------

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: An exception occurred processing JSP page /Logins/logins.jsp at line 43

40:

41:

42: PesquisaCentrosFormacao1 PesqCentroFormacao = new PesquisaCentrosFormacao1();

43: ArrayList CFormacao = PesqCentroFormacao.listaCF();

44: session.setAttribute("CFormacao", CFormacao);

45:

46: PesquisarIncorporacoes ResultadoInc = new PesquisarIncorporacoes();

Stacktrace:

org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:505)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:416)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)

javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)

root cause

java.lang.NullPointerException

model.controlo.PesquisaCentrosFormacao1.listaCF(PesquisaCentrosFormacao1.java:23)

org.apache.jsp.Logins.logins_jsp._jspService(logins_jsp.java:107)

org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)

javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.18 logs."

________________________________________________________________________________________________________________________________

Share this post


Link to post
Share on other sites

Estás a apanhar uma NullPointerException, o que quer dizer que estás a trabalhar sobre um objecto que está a null (não foi devidamente preenchido, o endereço de memória foi apagado, está vazio, etc).

É nesta linha:

ArrayList CFormacao = PesqCentroFormacao.listaCF();

O atributo listaCF está null. Espero que listaCF não seja o atributo da classe, mas um método que te retorna um ArrayList, pois convinha que os atributos das classes fossem private, para os acederes crias um método getAtibutoXPTO(), de modo a evitar problemas deste género...

Mas já devias saber isso, na escola...

:rezingao:

Share this post


Link to post
Share on other sites

tens razão, não tinha reparado.

Edited by camurso_

Share this post


Link to post
Share on other sites

sim fica a null... contudo como é possível acontecer à 3ª X que clico por exemplo para inserir na combobox, e se compilar e correr o programa depois do erro ocorrer, dar o erro que dá? se fizer uma cópia da classe e fizer as respectivas mudanças ele funciona novamente até à 3ª acção...

Share this post


Link to post
Share on other sites

só fazendo um debug...

Ou se mostrares o código de onde estás a alterar esse valor. Porque, se está a null, é porque algo o está a pôr a null...

Sempre podes colocar um if atrás, tipo,

if(PesqCentroFormacao.listaCF() != null)

ArrayList CFormacao = PesqCentroFormacao.listaCF();

else

ArrayList CFormacao = new ArrayList();

Não vai estourar, mas a lista está vazia...

:rezingao:

Share this post


Link to post
Share on other sites

Estourou na mesma... ao inicio quando carrego os dados para a variável de sessão e mesmo depois quando uso um objecto da classe...

Share this post


Link to post
Share on other sites

Sem mostrares o código ou fazeres debug nunca vais perceber o que se passa...

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.