我的servlet正在拋出NullPointerException
。我想顯示完整的堆棧調用跟蹤,以便我可以找出正在拋出異常的行號。從NullPointerException獲取堆棧跟蹤
我該怎麼做?我已經使用fillInStackTrace()
。它不打印行號。
我的servlet正在拋出NullPointerException
。我想顯示完整的堆棧調用跟蹤,以便我可以找出正在拋出異常的行號。從NullPointerException獲取堆棧跟蹤
我該怎麼做?我已經使用fillInStackTrace()
。它不打印行號。
您是否嘗試過使用e.printStackTrace()
?
假設你正在蹤跡不帶行號(這是什麼的問題的最後一句似乎在說),那麼問題是,你的代碼已經沒有調試信息編譯。您將需要重新編譯它...
如果您使用Maven構建,您應該默認獲取調試信息。檢查java插件配置中的maven.compile.debug
和maven.compile.debuglevel
屬性;看http://maven.apache.org/maven-1.x/plugins/java/properties.html
如果你使用Ant構建,請確保<javac>
任務具有debug='true'
並檢查debuglevel
屬性。
如果您正在通過運行javac
目錄構建,則應該默認獲取行號。根據javac manual page檢查-g
選項。
AFAIK堆棧跟蹤應該在運行時異常中自動填充,您不需要做任何特定的操作。你能發佈實際的代碼來顯示異常堆棧跟蹤嗎? – 2011-04-12 09:33:14
是否要顯示在服務器控制檯\日誌中或作爲對客戶端/瀏覽器的響應的一部分? – anirvan 2011-04-12 09:33:52
作爲迴應的一部分。應該出現在頁面上。 – prometheuspk 2011-04-12 10:05:47