2013-08-30 66 views
2

我的問題是關於如何解決已編譯的jsp類中的異常。如何將已編譯的jsp類的行號映射到原始源代碼?

例子:我從生產系統(在Apache Tomcat運行)以下堆棧跟蹤:

java.lang.NullPointerException 
    at jspc_compiled.infobox_jsp._jspService(infobox_jsp.java:147) 
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) 
    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436) 
    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374) 

通過版本控制,我可以從發佈的版本恢復原來的Java文件和JSP文件。我也可以訪問部署的戰爭文件。 我沒有找到,是一種可靠的方式,將編譯好的JSP中的異常行號映射回原始源代碼。

有沒有一種很好的方法來分析從另一臺機器編譯的JSP中的堆棧跟蹤?

相關side-question:如果我編譯我的本地機器上的JSP(使用相同版本的源代碼)以確保編譯的JSP與另一臺機器上的完全相同,

+0

您對dev使用什麼IDE? – MaVRoSCy

+0

@MaVRoSCy我主要使用IDEA,但也使用Eclipse。當我在本地進行開發時,我無法識別異常行。我的問題是,只有我得到堆棧跟蹤和軟件的版本號。 –

回答

1

Eclipse我們可以使用Tomcat爲JSP創建的Java源代碼進行調試

+0

是的,當我在本地運行應用程序時,我可以調試它。我還沒有想到的困難部分是如何分析一個本地無法複製的問題,但是隻有一個堆棧跟蹤。 –

相關問題