java - 如何将已编译jsp类的行号映射到原始源代码?

标签 java jsp tomcat stack-trace

我的问题是关于如何解决已编译的 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 文件。我还可以访问已部署的 war 文件。 我没有找到一种可靠的方法来将已编译的 JSP 中异常的行号映射回原始源代码。

有没有一种好的方法可以分析来自另一台机器的已编译 JSP 中的堆栈跟踪?

相关的附带问题:如果我在本地机器上编译 JSP(使用相同版本的源代码)是否保证编译后的 JSP 与在其他机器上完全相同?

最佳答案

Eclipse我们可以使用 Tomcat 为 JSP 创建的 Java 源代码进行调试

关于java - 如何将已编译jsp类的行号映射到原始源代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18530734/

相关文章:

java - Hibernate Timestamp 到 LocalDateTime 的转换意外结果

spring - 我可以在 tomcat 上使用一个 hibernate 持久性单元并在部署的 war 之间共享它吗?

Tomcat + LDAP 问题 : socket closed on connection

java - C3P0 连接池获取 java.sql.SQLException : No suitable driver exception

java - 在 JSF-2.0 中使用 JSP 技术(而不是 XHTML)有什么缺点吗?

java - Apache Tomcat 无法加载 web.xml - 连接超时

java - java中的嵌套方法?

java - 从 Jakarta Tomcat 中的列表生成重定向

java - 从java中的两个属性文件读取值?

eclipse - 本地主机上的服务器 Tomcat v8.0 无法启动 : Failed to Start Component in Eclipse for JSP