首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从堆栈跟踪行号中获取实际jsp行号?

从堆栈跟踪行号中获取实际jsp行号?
EN

Stack Overflow用户
提问于 2009-08-20 08:30:06
回答 3查看 10.1K关注 0票数 31

下面是堆栈跟踪:

代码语言:javascript
复制
...
org.apache.jsp.showcustomer_jsp._jspService(showcustomer_jsp.java:128)
org.apache.jasper.runtime.HttpJspBase.service(Unknown Source)

我就是这样做的:

  1. 从堆栈跟踪中获取行号,在本例中是128。
  2. 查找showcustomer_jsp.java文件(在/var/run/tomcat-6/Catalina/localhost/_/org/apache/jsp中查找并不太明显)。
  3. 打开它,转到第128行。
  4. 现在,在.jsp文件中搜索您在_jsp.java文件第128行中找到的内容。
  5. 轰隆隆!你完蛋了!

拜托,有更简单的方法吗?

EN

回答 3

Stack Overflow用户

发布于 2009-09-07 09:14:34

我在Eclipse上找到了这个页面,它解释了如何配置Eclipse以便您可以进入生成的java代码单击堆栈跟踪。

票数 5
EN

Stack Overflow用户

发布于 2009-08-20 10:32:04

我觉得你做不到。JSP文件被编译成servlet,不能直接运行。由于异常是从这个servlet抛出的,所以堆栈跟踪中的行是类中的一行。JSP中的原始行此时丢失。

通常最好避免编写代码或从jsp抛出异常,并将逻辑封装在servlet和JSP标记中,并使用JSTL进行控制流(if、forEach等)。

票数 2
EN

Stack Overflow用户

发布于 2017-02-10 19:53:38

我曾经用Lex和Yacc编程,这将生成C代码,您可以启用#行预处理器指令进行调试。当在生成的c代码中发生一些事情时,IDE足够聪明地打开相应的lex或yacc文件,而不是生成的c代码。脾气暴躁

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1304776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档