J'utilise actuellement Apache Tomcat 5.5.16 pour servir une API de recherche Lucene. Dernièrement, j'ai eu quelques NullPointerExceptions dans ma classe de servlets. La classe s'appelle com.my_company.search.servlet.SearchServlet
.Pourquoi la piletrace de ma servlet affiche-t-elle "Unknown Source" pour mes cours?
Avec certains types d'entrées, je peux régulièrement créer une exception NullPointerException, mais je n'arrive pas à déterminer exactement où elle se trouve.
Le StackTrace indique que le bug est INTERVENUES ici:
com.my_company.search.servlet.SearchServlet.doGet(Unknown Source)
La source et les fichiers .class pour cette classe est dans:
$TOMCAT_HOME/webapps/my_servlet/WEB-INF/classes/com/my_company/search/servlet/
Ma question est, comment puis-je demander à Tomcat de me fournir des emplacements d'erreur plus descriptifs?
+1, et si vous utilisez Eclipse pour compiler similaire a été discuté hier http://stackoverflow.com/questions/939194/preserving-parameter-argument-names-in-compiled- java-classes – Pool
+1, avec le commentaire ajouté que vous avez probablement besoin de réfléchir à refactoriser votre méthode doGet - si vos méthodes sont assez petites et font assez peu, juste savoir quelle entrée était nulle et quelle méthode elle était probablement suffisante . (mais la compilation avec le débogage activé est certainement la réponse à votre problème immédiat.) – Jared
Merci, c'était extrêmement utile. J'ai ajouté debug = true à la section javac du fichier de construction et cela a parfaitement fonctionné. Et oui. Il n'y a pas de question que j'ai besoin de refactoriser mon doGet =) – zorlack