Attualmente sto usando Apache Tomcat 5.5.16 per servire un'API di ricerca basata su Lucene.Perché la mia stacktrack servlet mostra "Sorgente sconosciuta" per le mie classi?
Ultimamente sto avendo alcune NullPointerExceptions all'interno della mia classe servlet. La classe si chiama com.my_company.search.servlet.SearchServlet
.
Con determinati tipi di input, posso creare abitualmente una NullPointerException, ma non riesco a capire dove si trova esattamente.
Lo StackTrace indica che il bug è in corso qui:
com.my_company.search.servlet.SearchServlet.doGet(Unknown Source)
Il file .class sorgente e per questa classe è tutto in:
$TOMCAT_HOME/webapps/my_servlet/WEB-INF/classes/com/my_company/search/servlet/
La mia domanda è, come posso far sì che Tomcat mi fornisca percorsi di errore più descrittivi?
+1, e se si utilizza Eclipse per compilare simile è stato discusso ieri http://stackoverflow.com/questions/939194/preserving-parameter-argument-names-in-compiled- java-classes – Pool
+1, con il commento aggiunto che probabilmente dovresti pensare al refactoring del tuo metodo doGet - se i tuoi metodi sono abbastanza piccoli e sufficientemente piccoli, solo sapere quale input era nullo e quale metodo fosse probabilmente sarebbe sufficiente . (ma la compilazione con il debug attivato è sicuramente la risposta al tuo problema immediato). – Jared
Grazie a questo è stato di grande aiuto. Ho aggiunto debug = true alla sezione javac del file build e ha funzionato perfettamente. E sì. Non c'è dubbio che ho bisogno di refactoring mio doGet =) – zorlack