Newsgroup: it.comp.java
Titolo: java vs Paolo

Buona sera a tutti,
ho una form che raccogli info su di un'utente e richiama una servlet
"InsertCli".
Quando vado a cliccare sul pulsante Registra mi dà una sbrodolata di errori:
type Exception report
message Internal Server Error
description The server encountered an internal error (Internal Server Error)
that prevented it from fulfilling this request.
exception 
java.lang.NullPointerException
        at servlet.InsertCli.doPost(InsertCli.java:22)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
        at
org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2347)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
        at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
        at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1027)
        at
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1125)
        at java.lang.Thread.run(Thread.java:534)
Qualcuno può aiutarmi?
Come avrete intuito non sono un'esperto. :-))
Grazie a tutti
Ciao
Paolo

         at servlet.InsertCli.doPost(InsertCli.java:22)
Apri il tuo InsertCli.java e vai alla riga 22 - ci sarà qualcosa tipo:
istanza.metodo(parametro)
oppure
istanza.attributo
quando quell'istruzione viene eseguita istanza è null
Se non riesci a scoprire il perchè, posta il codice :)
Saluti,
	Giorgio

         at servlet.InsertCli.doPost(InsertCli.java:22)
Se non posti il codice, difficilmente ti si può aiutare.
Comunque alla riga 22 del tuo file InsertCli.java, stai utilizzando un
oggetto nullo e, quindi, ottieni un NullPointerException.
	Regards,
		Kazuma
-- 
Alessandro "Kazuma" Garbagnati, kazuma(presso)jguru(punto)com
Tomcat & EJB FAQ Manager, 
http://www.jguru.com
Java User Group Milano - 
http://www.jugmilano.it

 ha scritto nel messaggio
news:l8lCc.52119$G%.20250@tornado.fastwebnet.it...
[CUT CUT]
Metti subject coerenti con il body del messaggio.
-- 
Ciao e buon lavoro,
   Renato
---- 
Renato Eschini
    Inera srl
    Via Vespucci 41
    56100 Pisa
    Tel:         (+39) (0)50 2201218
    WWW:         
http://www.inera.it

 Quando vado a cliccare sul pulsante Registra mi dà una sbrodolata di errori:
Non è una sbrodolata di errori, è uno stack trace di *una* exception e 
servlet.InsertCli.doPost(InsertCli.java:22) è la classe/metodo/numero 
riga dove l'eccezione è stata scatenata. Non è un idea malvagia andare a 
vedere il codice a quella riga.

Ciao e grazie per la risposta,
il problema infatti era proprio nell'InsertCli.java quando prova ad aprire
la connessione con mysql.
Io ho creato una classe ConnessioneDB.java:
public class ConnessioneDB {
  public ConnessioneDB()
  {}
  public static Connection getConnection()
  {
    Connection connection;
    try
    {
      Class.forName("org.gjt.mm.mysql.Driver");
      connection =
DriverManager.getConnection("jdbc:mysql://localhost/ecommerce", "root","");
    }
    catch (Exception e)
    {
        System.out.print(e);
      connection = null;
    }
    return connection;
  }
}
e quando tento di stabilire una connessione mi dà questo mess di errore:
"Access denied for user: @localhost to database ecommerce"
Non vorrei che i parametri che passo al metodo getConnection siano
sbagliati.
Qualcuno ha dei suggerimenti da darmi?
Grazie ancora a tutti
Ciao
Paolo
"Giorgio Gallo" <giorg...@RMVoverlord.it> ha scritto nel messaggio
news:cbctt6$6ka$1...@balena.cs.interbusiness.it...


 "Access denied for user: @localhost to database ecommerce"
Ciao Paolo
A me non piace tanto l'idea di intercettare le eccezzioni il prima 
possibile e ignorarle: come avrai potuto constatare l'unico vantaggio 
dato dal tuo catch(Exception e){return null;} è quello di avere 
un'eccezione di tipo non corrispondente all'errore che hai si è 
verificato (se vedi una SQLException capisci al volo che hai un problema 
col db, se vedi una NullPointerException no).
Se (per scelta di design) non vuoi dover fare try...catch attorno ad un 
metodo, ma ritieni comunque che in caso di errore l'esecuzione non debba 
continuare, dovresti considerare l'ipotesi di wrappare le eccezioni 
controllate (quelle che devi catchare per forza) in un Error o una 
RuntimeException (meglio, in delle sottoclassi approptiate di Error o 
RuntimeException).
Riguardo il tuo problema col db, onestamente non so granchè di mySql... 
:) quindi in questa mia mi limito a sparar sentenze.
Immagino che tu ti sia già spulciato ben-bene la documentazione a tua 
disposizione prima di postare qui, ma voglio ugualmente chiederti:
* Sei sicuro di come si scriva l'URL jdbc per connettersi ad un mysql 
col driver che usi tu?
* Sei sicuro che sul db esista un utente chiamato root?
* Sei sicuro che root possa accedere al db senza password?
Saluti,
	Giorgio