2012-03-27 11 views
5

Sto utilizzando la seguente riga di codice in tutte le mie dichiarazioni di cattura per stampare gli errori alla console:Perché la mia eccezione BlackBerry getMessage() restituisce null?

System.out.println("ERROR MESSAGE " + e.getMessage()); 

A volte, nella console, ottengo il seguente:

ERROR MESSAGE null 

Come può essere nullo? Se raggiunge il fermo, significa che è stata lanciata un'eccezione, ma perché nulla?

risposta

6

Non so perché sia ​​nullo, immagino che il sistema operativo e le API di BlackBerry abbiano un comportamento indesiderato. Ho risolto questo problema utilizzando

e.toString()

come in:

catch (Exception e) 
{  
    System.out.println("Exception caught: " + e.toString()); 
} 
+0

e.toString() sembra ok finora, ancora non riesco a capire il motivo per cui la il messaggio sarebbe comunque nullo per un po 'di tempo. Grazie – PaulG

+5

Non tutte le eccezioni generate da BlackBerry OS, o alcuni programmi impostano il valore del messaggio, quindi è nullo di default. Almeno toString() ti darà il nome della classe dell'eccezione effettiva generata. Di solito è abbastanza. – Richard

Problemi correlati